java 读文件乱码,java读取文件名乱码

  java 读文件乱码,java读取文件名乱码

  最近遇到一个问题。Java读取文本文件(如csv文件、txt文件等。),遇到中文就变成乱码了。读取的代码如下:

  ListString lines=new ArrayList string();

  buffered reader br=new buffered reader(新文件阅读器(文件名));

  String line=null

  while ((line=br.readLine())!=null) {

  lines . add(line);

  }

  br . close();相关视频教程推荐:java在线学习

  原理:

  Java的I/O类处理如下:

  如何解决写爬虫IP受阻的问题?立即使用。

  Reader类是Java I/O中读取字符的父类,InputStream类是读取字节的父类,InputStreamReader类是相关字节和字符之间的桥梁。负责I/O过程中读取字节到字符的转换,特定字节到字符的解码由StreamDecoder实现。在StreamDecoder的解码过程中,字符集编码格式必须由用户指定。

  值得注意的是,如果不指定Charset,将使用本地环境中的默认字符集,例如,中文环境中将使用GBK编码。

  总结:Java读取数据流的时候,一定要指定数据流的编码方式,否则将使用本地环境中的默认字符集。

  经过以上分析,修改后的代码如下:

  ListString lines=new ArrayList string();

  buffered reader br=new buffered reader(new InputStreamReader(新文件输入流(文件名), UTF-8 ));

  String line=null

  while ((line=br.readLine())!=null) {

  lines . add(line);

  }

  br . close();更多相关教程,请访问:java入门。以上是java中乱码文本文件的细节。更多信息请关注其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: