dog*_*ane 5 java file-io nio java-7
在以前的Java版本中,我会通过创建这样的缓冲读取器来读取文件:
BufferedReader in = new BufferedReader(new FileReader("file.txt"));
Run Code Online (Sandbox Code Playgroud)
在Java 7中,我想使用Files.newBufferedReader,但我也需要传入一个charset.例如:
BufferedReader in = Files.newBufferedReader(Paths.get("file.txt"),
Charset.forName("US-ASCII"));
Run Code Online (Sandbox Code Playgroud)
以前,在阅读纯文本文件时,我不必担心字符集.我应该使用什么字符集?你知道在以前版本的Java中默认使用了什么字符集吗?我只是希望能够找到并用新的语句替换旧语句.
Jon*_*eet 11
以前,在阅读纯文本文件时,我不必担心字符集.
好吧,你应该做的.如果您刚刚使用FileReader,则使用系统的默认字符编码.这是一个坏主意,这就是为什么我总是使用FileInputStream和一个InputStreamReader.你应该总是明确它.如果你真的想为系统默认的字符编码,你应该使用Charset.defaultCharset()-但我强烈建议你不要.
如果您要读取文件,您应该知道字符编码,并指定它.如果您决定在编写文件时使用哪种字符编码,UTF-8是一个很好的默认选择.
| 归档时间: |
|
| 查看次数: |
4456 次 |
| 最近记录: |