2
парень дартс программистов.Как проверить конец Stream в Dart?
Я читаю файл, используя Stream, как показано ниже.
Stream<List<int>> stream = new File(filepath).openRead();
stream
.transform(UTF8.decoder)
.transform(const LineSpilitter())
.listen((line){
// TODO: check if this is the last line of the file
var isLastLine;
});
Я хочу, чтобы проверить линию в слушать(), является ли последняя строка файла.
Спасибо за ответ. При анализе текстового файла мне нужен способ обработки последнего сегмента по-другому, чем раньше. Я не могу использовать onDone, потому что все это «сделано», поэтому текст в переменной «line» больше не доступен. – seongjoo
Я понимаю. Что вы можете сделать, так это буферизировать последнюю строку и обрабатывать ее только после того, как вы получили следующую строку. 'onDone' обрабатывает последнюю буферную строку. –
Я думаю, что мог сработать. Если мне нужно сделать это без обходного пути, мне может потребоваться прямое обращение к байту из файла без использования Stream. – seongjoo