java读取文件乱码
时间: 2023-06-28 09:11:03 浏览: 109
如果在Java中读取文件时出现乱码,可能是因为文件编码格式与代码指定的编码格式不一致。Java默认使用UTF-8编码格式,如果文件的编码格式不是UTF-8,就会出现乱码。
解决方法:
1. 指定文件编码格式:可以使用InputStreamReader类指定文件编码格式,例如:
```
FileInputStream fileInputStream = new FileInputStream(filePath);
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "GBK");
BufferedReader reader = new BufferedReader(inputStreamReader);
```
上述代码中,指定了文件编码格式为GBK。
2. 转换编码格式:可以使用Java提供的编码转换API将文件从原来的编码格式转换为UTF-8,例如:
```
FileInputStream fileInputStream = new FileInputStream(filePath);
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "ISO-8859-1");
BufferedReader reader = new BufferedReader(inputStreamReader);
String line;
StringBuilder stringBuilder = new StringBuilder();
while ((line = reader.readLine()) != null) {
stringBuilder.append(new String(line.getBytes("ISO-8859-1"), "UTF-8")).append("\n");
}
```
上述代码中,先将文件从ISO-8859-1编码格式转换为UTF-8编码格式,然后再读取文件内容。
希望这些方法可以帮助你解决文件乱码问题。
阅读全文