`
单眼皮大娘
  • 浏览: 110985 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

JAVA 开发中处理乱码

    博客分类:
  • java
阅读更多
    在用COMMON-NET处理FTP时,遇到中文出现了乱码问题,乱码问题早先在做信息抽取的时候也遇到过,当时记得用第三方的词典,但是其是GBK编码,而我系统为UTF-8。

    这次也一样,工程为UTF-8,但是用COMMON-NET从FTP上下载文件的时候,中文乱码。无奈,上网搜,结果各种尝试,各种不行。

    靠人不如靠己,查看FTP这个类,发现:
 public static final String DEFAULT_CONTROL_ENCODING = "ISO-8859-1"

    COMMON-NET的默认是“ISO-8859-1”编码,也就是其从服务器上读取的文件,都是按照ISO-8859-1编码方式处理的,在工程中返回字符串时,已经是乱码,所以不管怎么改,都是乱码。
    The default character encoding used for communicating over an FTP control connection. The default encoding is an ASCII-compatible encoding. Some FTP servers expect other encodings. You can change the encoding used by an FTP instance with setControlEncoding.

    FTP服务器是GBK的,所以将值改为GBK后,在UTF-8的工程中就可以正确解读中文了。

    写到这里,不深入,下次遇到这个问题还会被卡住。不妨探究下问题的根本。
   
    是什么导致中文乱码的?
    当磁盘上的文件的编码和我们系统中的编码不一致的时候,此时读文件就会产生乱码,一般文件的I/O都是以字节流的方式read和write。当系统是UTF-8,而原始文件是GBK,那么系统按照UTF-8的方式encoding GBK的文件,就会产生字节错位,所以会产生乱码。

    知道了如何产生乱码,接下来的问题就是如何解决乱码问题。
    首先我们得知道原始文件是什么样的编码格式,如果不晓得原始文件是什么编码,那必须写一个字符检测程序(这一点浏览器做的是相当的好,不论是什么编码格式的网页,浏览器都能自动的检测出,并且转换成我们本地的格式,从而我们不会看到乱码);
    知道是什么编码的文件,那么我们就按照相应格式的文件编码格式读取文件,比如是UTF-8的文件,那么就以UTF-8的格式读取文件,这个格式与我们的工作平台无关,此时如果我们的工作平台是GBK编码,那么放心,绝不会出现乱码。
    
分享到:
评论

相关推荐

    java开发乱码问题处理大全

    java开发乱码问题处理大全,让你迅速成为高手

    Java乱码问题解决

    在Java编程中,经常会碰到汉字的处理及显示问题,以不小心就会产生一大堆乱码或者问号。造成这种问题的根本原因是Java中默认的编码方式是Unicode,而中国人通常使用的文件和DB都是基于GB2312或BIG5等编码,故会出现...

    java汉字乱码终极解决代码

    开发中前台页面向后台传参,汉字乱码,看了好多网上的方法都解决不了,所以写了一个工具类,判断是乱码就转换,不乱码就不乱换,汉字字母符号自动判断。最后完美解决汉字乱码问题。

    java+jsp+mysql开发 web项目处理中文乱码问题

    Jsp输出中文的乱码问题,获取表单提交的数据时的中文乱码问题,url中的中文问题,数据库中采取的编码方式不同于utf-8怎么办

    web开发中url乱码处理

    在开发web项目时经常遇到乱码问题,怎样去解决这种问题,是很头疼的事情,这里总结了几种方法供使用。

    Java Web中文乱码处理研究.pdf

    在java Web应用开发常见的问题中,中文的乱码问题在页面中没有统一的方法解决,造成程序员浪费大量的时间与精力且代码效率不高,因此提出了新的乱码算法,并设计了通用的乱码处理器,提高了程序员的工作效率.

    Java-Web开发中乱码处理归纳

    第一次融入CSDN大家庭,欢迎大家的指教! 所上传的内容,是根据自己平时学习过程中,遇到的问题,所做的归纳小结,现发出来,供大家参考学习!其中有不正确的地方,也希望大家批评指正!

    Java Web编程中中文信息处理出现乱码的研究 (1).pdf

    为了解决软件开发人员在java Web编程中处理中文信息出现乱码的问题。对java Web编程的各个环节进行深入细致的研究,针对处理中文信息出现乱码的关键点,利用处理技术的核心代码提出解决方法。为java Web编程者处理中文...

    Servlet 中文乱码解决工具类

    在Java Web程序开发中,由于Web容器内部使用编码格式并不支持中文字符集,所以,处理浏览器请求中的中文数据就会出现乱码的现象。由于Web容器使用了ISO-8859-1的编码格式,所以在Web应用的业务处理中也会使用ISO-...

    WEB开发乱码处理总结

    WEB开发中总会遇到乱码,这些都是经常出现,但是很烦的问题,处理起来并不难

    源代码中文乱码==转换为UTF8

    源代码中的中文因为编码问题,在eclipse等开发环境中显示为乱码。找到的次工具可以“批量”处理转换,解决乱码问题:将GBK编码转换为UTF8编码

    tomcat过滤器,处理表单提交出现乱码

    处理表单提交页面出现乱码现象,第三方开发。

    java压缩中文处理使用org.apache.tools.zip已经打包成jar

    java压缩中文处理使用org.apache.tools.zip已经打包成jar 只要放在LIB文件夹下,然后在JSP 或 JAVA 里引用即可。 <%@ page language="java" import="java.sql.*,java.io.*,org.apache.tools.zip.Zip" pageEncoding=...

    Java Web实现文件下载和乱码处理方法

    件上传和下载是web开发中常遇到的问题。今天小编给大家分享下Java Web实现文件下载和乱码处理方法的相关资料,需要的朋友可以参考下

    Java Web开发中国际化问题的设计与实现.pdf

    在java web开发中,处理中文字符时经常会出现乱码问题。该文从java Web工程字符编码理论出发,介绍了java Web程序开发中常用的字符编码集,分析出现中文乱码的原因,并给出解决方法。

    java web开发基础

    java web开发基础知识、xml讲解、中文乱码处理等web开发中经常遇到的问题

    Java Web开发中对Excel文件的读写实现 (1).pdf

    在java web开发中,处理中文字符时经常会出现乱码问题。该文从java Web工程字符编码理论出发,介绍了java Web程序开发中常用的字符编码集,分析出现中文乱码的原因,并给出解决方法。

Global site tag (gtag.js) - Google Analytics