Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 颤振中的缓冲文件读取_Android_Dart_Flutter - Fatal编程技术网

Android 颤振中的缓冲文件读取

Android 颤振中的缓冲文件读取,android,dart,flutter,Android,Dart,Flutter,我有下面的Dart代码,我试图使读取文件缓冲。就像java的 BufferedReader < /C>或C++ >代码> IFSturi。有这样的功能吗?我甚至找不到file.dart或file\u impl.dart中提到的缓冲区。如果我正确理解了调试,Dart似乎正在一次读取整个文件 那么,有谁能帮我把它缓冲起来,或者给我指出缓冲区所在的正确方向吗 final file = File(join(documentsDirectory, "xxx.txt")); final List<St

我有下面的Dart代码,我试图使读取文件缓冲。就像java的<代码> BufferedReader < /C>或C++ >代码> IFSturi。有这样的功能吗?我甚至找不到
file.dart
file\u impl.dart
中提到的缓冲区。如果我正确理解了调试,Dart似乎正在一次读取整个文件

那么,有谁能帮我把它缓冲起来,或者给我指出缓冲区所在的正确方向吗

final file = File(join(documentsDirectory, "xxx.txt"));
final List<String> lines = await file.readAsLines(); //file.readAsLinesSync()
lines.forEach((line) {
    ....
});
final file=file(join(documents目录,“xxx.txt”);
最终列表行=wait file.readAsLines()//readAsLinesSync()文件
行。forEach((行){
....
});
使用
file.openRead()
。这将返回一个
字节流
。如果要以字符形式读取,请使用适当的解码器(可能是
utf8
)转换流


正如上面所说,您必须将流读到最后,或者取消它。

好的,谢谢。这似乎是目前的解决方案。我认为它的缓冲区大小
\u blockSize=64*1024
是不能更改的吗?我以前观察到它似乎使用64k,是的。我从来没有必要改变它。你能看看我的编辑,如果你也有答案吗?你是在发布模式还是调试模式?这将产生很大的不同。
readAsLines
的源代码可以在
文件\u impl.dart
中找到,因此您应该能够尝试两种不同的方法。使用instead@pskink对但是速度对我来说并不重要。我想要大小可变的缓冲区。