`

JAVA学习提高之---- Java读取文件中含有中文的解决办法

阅读更多

引用:
http://www.lihuasoft.net/article/show.php?id=580

  1. 折磨了一天的问题,终于在黄昏的时候解决了,现在一吐为快。
  2. 众所周知,java的中文问题一直是一个老大难的问题,这个现象可以在csdn中java论坛里关于中文乱码的提问率就可以了解到,甚至软件巨人IBM专门开辟了一个解决中文问题的专区,作为一个俗人(一直梦想希望想金凯利那样成为一个“冒牌天神”,只是一直没有成功,也许是因为上帝不照顾中国吧),我也为同意的问题困扰,好在今天解决了。
  3. 随着我对.net平台的彻底放弃(只是生活所迫,毕竟我还要生活),将原有的资源转到Java平台上来是我当前的一个重要任务之一,说到这里,不得不承认.net对中文问题解决的很好,虽然偶尔也会出现乱码。
  4. 问题是这样的,我的box(http://www.ibeyond.org/box/)原来是使用asp.net写的(当时只是为了尝试新的技术),当时为了数据的可移植性我放弃了使用数据库,将全部数据保存为UTF-8编码的文本文件,在.net中读取这种文件秩序只要指定打开文件的编码方式,中文问题就可以避免。但是按照我以前的思维,java中不是这么作的,java中都是先读取后转换的,最后的结果证明我错了,看来经验主意害死人呀。
  5. Filef=newFile((newBoxConfig()).getBaseDir()+"Data\\"+request.getParameter("ID")+".inc");
  6. BufferedReaderreader=newBufferedReader(newFileReader(f));
  7. Stringline;
  8. while((line=reader.readLine())!=null){
  9. strContent+=line;
  10. }
  11. 这是我最初的代码f就是我要读取的UTF-8格式的文本文件,这一天中经过了无数次的尝试,包括newString(strContent.getBytes("UTF-8"))(其中尝试了N种编码转换),System.setProperty("file.encoding","UTF-8")(其中指定了N种编码转换),都失败了,其中甘苦相信各位经历过被程序折磨的各位看官都有所了解,在此略过。终于在Google中无数次查询中得到了一个后来被证明很重要的一条信息“读取文件时指定字符编码”,一语点醒梦中人,.net中不就是这么实现的吗?走了一圈弯路终于解决了这个问题。
  12. Filef=newFile("E:\\eclipse\\workspace\\box\\Data\\2003-3-7-100.inc");
  13. InputStreamReaderread=newInputStreamReader(newFileInputStream(f),"UTF-8");
  14. BufferedReaderreader=newBufferedReader(read);
  15. Stringline;
  16. while((line=reader.readLine())!=null){
  17. System.out.println(line);
  18. }
  19. 通过打开文件是指定文件编码的方法把这个问题轻松的解决了。
  20. 最后总结一下:java要读取数据流的时候一定要指定数据流的编码方式(至少读取String流的时候要这么作。
分享到:
评论

相关推荐

    JAVA解决URL路径中含有中文的问题

    JAVA解决URL路径中含有中文的问题。无论是路径中还是文件名包含中文都可以处理。经测试验证通过。

    Java读取含中文key的properties文件

    以下将详细介绍如何在Java中读取含中文key的Properties文件,并利用反射调用相关方法。 首先,我们需要理解Java的Properties类。`java.util.Properties`是Java标准库中的一个类,它提供了一种加载和保存属性列表的...

    java properties文件中文转化

    当我们在properties文件中直接使用中文时,Java在读取时可能会出现乱码。为了解决这个问题,我们可以使用两种策略: 1. 文件编码转换:在写入properties文件时,使用支持中文的编码,如UTF-8。在读取时,需要指定...

    Java中,当表单含有文件上传时,提交数据的如何读取(吐血版)

    在Java Web开发中,处理包含文件上传的表单提交是一项常见的任务。当用户通过HTML表单上传文件时,表单的`enctype`属性通常设置为`multipart/form-data`,以便能够传输二进制数据,如图片、文档等。本文将深入探讨...

    解决了DBF数据和表头乱码的javadbf.jar

    原始的javadbf.jar可能存在读取DBF文件时编码转换不准确的问题,导致中文或者其他非ASCII字符显示为乱码。开发者通过识别并修复了这个问题,使得新的javadbf.jar能够正确地处理包含非ASCII字符的数据和表头,提高了...

    Java读取Excel文件

    java使用的jpoi读取execl文件 该资源含有最新的poi的jar包 可以用来读取execlxls xlsx两种格式 里面含有代码可以直接运行

    Java读取Excel表格中的日期

    通过上述方法,可以有效地解决Java读取Excel文件中日期格式的问题。这种方法不仅能够准确地识别日期格式,还能够妥善处理特殊情况,确保数据的一致性和准确性。在实际应用中,可以根据具体需求调整日期格式的解析...

    java读取txt文件

    java 读取txt文件,文件中包含汉字和英文。并且含有乱码处理的方法。

    读取txt文件,统计“java”字符串出现的次数

    读取txt文件,统计“java”字符串出现的次数

    java操作摄像头项目,含有xuggle-xuggler-5.4.jar

    这使得在 Java 应用中读取、写入或转换不同格式的多媒体文件成为可能。 4. **实时流处理**:Xuggler 支持实时流处理,可以对正在传输的视频流进行操作,例如实时添加水印、调整画质等。 5. **帧操作**:Xuggler ...

    找出代码文件中含有中文的程序

    标题中的“找出代码文件中含有中文的程序”是一个关于软件开发中的文本分析任务,目标是检测源代码文件中是否包含非英文字符,特别是中文字符,但要排除注释部分。这通常是为了确保代码的国际化和本地化,以及避免...

    Aspose.OCR-for-Java-17.2

    这款库由Aspose公司提供,它允许开发者在Java应用程序中集成强大的文字识别功能,从而提升文档处理的效率和准确性。 Aspose.OCR-for-Java提供了丰富的API接口,这些接口可以方便地被Java开发者使用,以实现对图像...

    java 逐行读取txt文本如何解决中文乱码.rar

    总的来说,Java读取含中文字符的txt文件时,关键是正确地指定文件编码,同时注意文件路径和开发环境的编码设置。通过上述方法,你应该能够成功地逐行读取并显示中文内容,避免乱码问题。在实际开发中,还要考虑到...

    java 逐行读取txt文本如何解决中文乱码

    java读取txt文本中如含有中文,可能会出现乱码,解决方案是: 1.要统一编码,java工程的编码,txt文本编码,java工程中的java文本编码都统一为utf-8; 2.利用 InputStreamReader(new FileInputStream(fileUrl), ...

    java android zip解压缩(解决压缩中文乱码问题)

    本篇文章将深入探讨如何在Android平台上解决Java ZIP库在解压缩中文文件时出现的乱码问题。 首先,我们要明白乱码问题的根源。在文件的压缩和解压缩过程中,文件名通常被编码为字节序列,这个序列取决于原始文件名...

    利用JAVA对STDF文件进行分析_郑立钧

    通过读取文件中的字节数据,可以移动文件指针并获取数据,如FARRecord类中所示,其中cpuType和stdfVer分别通过读取字节并应用位掩码(AND 0xff)来获得。 主程序处理STDF文件的大致流程如下: 1. 打开STDF文件,...

    org.dtools.javaini-v1.1.0.jar

    这种修改使得该库能够处理含有中文字符的INI配置文件,大大提升了其在中文环境下的可用性。 使用`org.dtools.javaini`库,开发者可以轻松地实现以下功能: 1. **读取INI文件**:库提供API来读取INI文件,解析其中...

    Java本地编码文件转UTF-8文件

    把含有本地编码的文件转成utf-8的,经常用于java文件的转码. 把编码gbk的java文件批量转成utf-8编码的文件.

    java 生成excle文件

    在Java编程环境中,生成Excel文件是一项常见的任务,特别是在数据处理、报表生成或导出时。在本场景中,我们使用了jxl.jar库来完成这个功能。jxl是一个开源的Java库,它允许开发者读取、写入和修改Excel文件(.xls...

Global site tag (gtag.js) - Google Analytics