new FileReader 乱码
时间: 2023-10-31 12:53:47 浏览: 142
回答: 当使用FileReader读取文件时,中文字符可能会出现乱码的情况。这是因为FileReader使用的是系统默认的编码方式,而在Windows系统中,默认的编码方式是936中国 - 简体中文(GB2312)。而如果文件的编码方式与系统默认的编码方式不一致,就会导致中文字符的乱码。\[1\]
为了解决这个问题,可以使用InputStreamReader来指定文件的编码方式。例如,可以使用UTF-8编码方式来读取文件,代码如下所示:
```
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(fileName), "UTF-8"));
List<String> lines = new ArrayList<String>();
String line = null;
while ((line = br.readLine()) != null) {
lines.add(line);
}
br.close();
```
这样就可以正确地读取包含中文字符的文件,并避免乱码的问题。\[3\]
#### 引用[.reference_title]
- *1* [fileReader字符流读取中文乱码的解决办法](https://blog.csdn.net/weixin_43373600/article/details/108520144)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* *3* [Java中 FileReader的中文乱码问题](https://blog.csdn.net/w1300048671/article/details/50396717)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文