如何获取文本文件的内容,同时保留文件末尾是否有换行符?使用这种技术,无法判断文件是否以换行符结尾:
BufferedReader reader = new BufferedReader(new FileReader(fromFile));
StringBuilder contents = new StringBuilder();
String line = null;
while ((line=reader.readLine()) != null) {
contents.append(line);
contents.append("\n");
}
Run Code Online (Sandbox Code Playgroud)
不要使用readLine(); 使用read()方法一次传输一个字符的内容.如果你在BufferedReader上使用它,它将具有相同的性能,虽然与上面的代码不同,它不会"规范化"Windows风格的CR/LF换行符.
您可以使用此处列出的技术之一读取整个文件内容
我最喜欢的是这个:
public static long copyLarge(InputStream input, OutputStream output)
throws IOException {
byte[] buffer = new byte[DEFAULT_BUFFER_SIZE];
long count = 0;
int n = 0;
while ((n = input.read(buffer))>=0) {
output.write(buffer, 0, n);
count += n;
}
return count;
Run Code Online (Sandbox Code Playgroud)
}
| 归档时间: |
|
| 查看次数: |
11411 次 |
| 最近记录: |