面试题答案
一键面试在Java I/O跨平台文件操作读取文本文件内容时,为确保在各平台都能正确解析字符编码,通常使用InputStreamReader
类,并指定明确的字符编码。以下是示例代码:
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
public class FileEncodingExample {
public static void main(String[] args) {
try (BufferedReader reader = new BufferedReader(
new InputStreamReader(new FileInputStream("yourFile.txt"), "UTF-8"))) {
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在上述代码中:
FileInputStream
用于读取文件的字节流。InputStreamReader
将字节流转换为字符流,并通过指定UTF-8
字符编码确保跨平台兼容性。UTF-8
是一种广泛支持的字符编码,几乎在所有操作系统和编程语言中都能正确解析。BufferedReader
用于高效地读取字符流中的文本行。
通过这种方式,无论在何种操作系统下运行,都能以指定的字符编码正确读取文本文件内容。