热门IT资讯网

java txt文件写入时发生中文乱码怎么办

发表于:2024-11-30 作者:热门IT资讯网编辑
编辑最后更新 2024年11月30日,在用Java程序进行读写含中文的txt文件时,经常会出现读出或写入的内容会出现乱码。是因为系统的编码和程序的编码采用了不同的编码格式。解决方法:采用java.io.FileInputStream/ja

在用Java程序进行读写含中文的txt文件时,经常会出现读出或写入的内容会出现乱码。是因为系统的编码和程序的编码采用了不同的编码格式。

解决方法:

采用java.io.FileInputStream/java.io.InputStreamReader和java.io.FileOutputStream/java.io.OutputStreamWriter来解决这个问题。

实现代码:

//默认情况下,win系统编码是gbk/gbk2312,读取和写入时加入编码字符集可以解决乱码  public class ReadAndWrite {      private static void test(){          File firstFile = new File("D://fileone.txt");          File secondFile=new File("D://filesecond.txt");          BufferedReader in = null;          BufferedWriter out = null;                try {                   //加入编码字符集               in = new BufferedReader(new InputStreamReader(new FileInputStream(firstFile), "gbk"));              //加入编码字符集              out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(secondFile), "gbk"));              String line = "";              while((line = in.readLine())!=null){                  System.out.println(line);                  out.write(line+"\r\n");              }          } catch (FileNotFoundException e) {              System.out.println("file is not fond");          } catch (IOException e) {              System.out.println("Read or write Exceptioned");          }finally{                         if(null!=in){                   try {                      in.close();                  } catch (IOException e) {                      e.printStackTrace();                  }}              if(null!=out){                  try {                      out.close();                  } catch (IOException e) {                      e.printStackTrace();                  }           }     }  }

以上就是java文件写入乱码怎么办的详细内容,更多请关注其它相关文章!

0