首頁 >Java >Java基礎 >java讀寫html檔案亂碼解決方法

java讀寫html檔案亂碼解決方法

尚
原創
2019-12-06 16:16:503026瀏覽

java讀寫html檔案亂碼解決方法

1、JAVA读取文件,避免中文乱码。

/**
  * 读取文件内容
  *
  * @param filePathAndName
  *            String 如 c:\\1.txt 绝对路径
  * @return boolean
  */
public static String readFile(String filePathAndName) {
  String fileContent = "";
  try { 
   File f = new File(filePathAndName);
   if(f.isFile()&&f.exists()){
    InputStreamReader read = new InputStreamReader(new FileInputStream(f),"UTF-8");
    BufferedReader reader=new BufferedReader(read);
    String line;
    while ((line = reader.readLine()) != null) {
     fileContent += line+"\n";
    }  
    read.close();
   }
  } catch (Exception e) {
   System.out.println("读取文件内容操作出错");
   e.printStackTrace();
  }
  return fileContent;
}

2、JAVA写入文件,避免中文乱码。

public static void writeFile(String filePathAndName, String fileContent) {
  try {
   File f = new File(filePathAndName);
   if (!f.exists()) {
    f.createNewFile();
   }
   OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(f),"UTF-8");
   BufferedWriter writer=new BufferedWriter(write);  
   //PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(filePathAndName)));
   //PrintWriter writer = new PrintWriter(new FileWriter(filePathAndName));
   writer.write(fileContent);
   writer.close();
  } catch (Exception e) {
   System.out.println("写文件内容操作出错");
   e.printStackTrace();
  }
}

若写入的时候用 

1、PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(filePathAndName))); 

2、PrintWriter writer = new PrintWriter(new FileWriter(filePathAndName)); 

都会出现错误,不行。 

p.s. 我刚开始用上述方法的时候还是出先乱码,后来发现是因为我的html文件的编码方式是不是utf-8,改成utf-8即可。

查看一个文件的编码方式,一个简单的办法是:用记事本打开它,然后另存为一个副本文件,在“另存为”的页面下方,“保存”按钮前面,如下图所示,会出现原文件的编码方式。

如果不是UTF-8,把它改成UTF-8,保存即可。

更多java知识请关注java基础教程栏目。

以上是java讀寫html檔案亂碼解決方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn