当我们创建一个新的 BufferedReader
对象而不显式提供编码时,Java 默认使用什么编码/字符集?
例如:
try (final BufferedReader reader = new BufferedReader(new FileReader("my_file.txt"))) {
reader.readLine(); // What encoding is used to read the file?
}
最佳答案
BufferedReader
不做任何解码。它是另一个 Reader
的包装器......可能会也可能不会解码。
FileReader
使用 JVM 的默认字符编码进行解码,由 Charset.defaultCharset()
返回
javadoc 声明:
Convenience class for reading character files. The constructors of this class assume that the default character encoding and the default byte-buffer size are appropriate. To specify these values yourself, construct an
InputStreamReader
on aFileInputStream
.
关于java - Java 默认为 BufferedReader 使用什么编码/字符集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52126188/