首页 > Java > java教程 > 正文

Java读写txt文件时防止中文乱码问题出现的方法介绍

高洛峰
发布: 2017-01-20 16:15:38
原创
1465 人浏览过

问题:在用Java程序进行读写含中文的txt文件时,经常会出现读出或写入的内容会出现乱码。原因其实很简单,就是系统的编码和程序的编码采用了不同的编码格式。通常,假如自己不修改的话,windows自身采用的编码格式是gbk(而gbk和gb2312基本上是一样的编码方式),而IDE中Encode不修改的话,默认是utf-8的编码,这就是为什么会出现乱码的原因。当在OS下手工创建并写入的txt文件(gbk),用程序直接去读(utf-8),就会乱码。为了避免可能的中文乱码问题,最好在文件写入和读出的时候显式指定编码格式。

1、写文件:

public static void writeFile(String fileName, String fileContent) 
{  
  try 
  {  
    File f = new File(fileName);  
    if (!f.exists()) 
    {   
      f.createNewFile();  
    }  
    OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(f),"gbk");  
    BufferedWriter writer=new BufferedWriter(write);    
    writer.write(fileContent);  
    writer.close();  
  } catch (Exception e) 
  {  
    e.printStackTrace();  
  }
}
登录后复制

2、读文件:

public static String readFile(String fileName)
{  
  String fileContent = "";  
  try 
  {   
    File f = new File(fileName);  
    if(f.isFile()&&f.exists())
    {   
      InputStreamReader read = new InputStreamReader(new FileInputStream(f),"gbk");   
      BufferedReader reader=new BufferedReader(read);   
      String line;   
      while ((line = reader.readLine()) != null) 
      {   
        fileContent += line;   
      }    
      read.close();  
    }  
  } catch (Exception e) 
  {    
    e.printStackTrace();  
  }  
  return fileContent; 
}
登录后复制

更多Java读写txt文件时防止中文乱码问题出现的方法介绍相关文章请关注PHP中文网!


相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!