大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在用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文件写入乱码怎么办的详细内容,更多请关注创新互联其它相关文章!