我有以下Dart代码,正在尝试读取缓冲的文件。就像Java的BufferedReader
或C ++ ifstream
一样。有这样的功能吗?我什至找不到file.dart
或file_impl.dart
中提到的缓冲区。如果我正确理解了调试信息,似乎Dart会立即读取整个文件。
那么有人可以帮助我缓冲它还是指向缓冲的正确方向吗?
final file = File(join(documentsDirectory, "xxx.txt"));
final List<String> lines = await file.readAsLines(); //file.readAsLinesSync()
lines.forEach((line) {
....
});
答案 0 :(得分:1)
使用file.openRead()
。这将返回Stream
个字节。如果要读取为字符,请使用适当的解码器(可能是transform
)utf8
流。
如前所述,您必须阅读流的末尾或取消流。