FileWrite写中文乱码的问题

来源:互联网 发布:淘宝盗图怎样不被发现 编辑:程序博客网 时间:2024/04/30 20:28
 public static void writeHtml(List<String> list,Timestamp begintime,Timestamp endtime,long dbid){    File file=new File("D:\\123.html");    FileWrite  fw;    try{     fw=new  FileWrite(file);     for(int i=0;i<list.size();i++){      if(list.get(i)==null){       fw.write("");      }else{       fw.write(list.get(i));      }     }     osw.close();     System.out.println("write html ok");    }catch (Exception e) {     e.printStackTrace();  } }

原代码,写入到html文件后,中文是显示乱码。

后来的发现fw的encoding是eclipse的encoding,utf-8

但是浏览器是以GBK编码显示的,所以会出现中文乱码的情况

以下是修改后的代码

public static void writeHtml(List<String> list,Timestamp begintime,Timestamp endtime,long dbid){  File file=new File("D:\\123.html");  OutputStreamWriter  osw;  try{  osw=new OutputStreamWriter(new FileOutputStream(file), "GBK");  for(int i=0;i<list.size();i++){  if(list.get(i)==null){  osw.write("");  }else{  osw.write(list.get(i));  }  }  osw.close();  System.out.println("write html ok");  }catch (Exception e) {   e.printStackTrace();}}