国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

Java 解決讀寫本地文件中文亂碼的問題

2019-11-26 13:10:40
字體:
來源:轉載
供稿:網友

Java 解決讀寫本地文件中文亂碼的問題

前言:

在用Java程序進行讀寫含中文的txt文件時,經常會出現讀出或寫入的內容會出現亂碼。原因其實很簡單,就是系統的編碼和程序的編碼采用了不同的編碼格式。通常,假如自己不修改的話,windows自身采用的編碼格式是gbk(而gbk和gb2312基本上是一樣的編碼方式),而IDE中Encode不修改的話,默認是utf-8的編碼,這就是為什么會出現亂碼的原因。當在OS下手工創建并寫入的txt文件(gbk),用程序直接去讀(utf-8),就會亂碼。為了避免可能的中文亂碼問題,最好在文件寫入和讀出的時候顯式指定編碼格式。

按行讀取本地文件:

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+"/n";        }        read.close();      }    } catch (Exception e) {      e.printStackTrace();    }    return fileContent;  }

寫入本地文件:

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();    }  }

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 定安县| 枞阳县| 菏泽市| 兰坪| 德安县| 全椒县| 莎车县| 霍州市| 监利县| 驻马店市| 靖宇县| 文化| 航空| 沧源| 临海市| 石柱| 鄢陵县| 宁陕县| 乌拉特中旗| 西安市| 中方县| 华蓥市| 金阳县| 弥勒县| 库伦旗| 朔州市| 旬邑县| 治县。| 东莞市| 土默特右旗| 武乡县| 武定县| 江城| 陵水| 寿宁县| 色达县| 太仓市| 石首市| 贵德县| 贵州省| 威远县|