Làm cách nào để đọc đầu vào bảng điều khiển từ stdin
trong Dart?Làm cách nào để đọc giao diện điều khiển đầu vào/stdin trong Dart?
Có một số scanf
trong Dart không?
Làm cách nào để đọc đầu vào bảng điều khiển từ stdin
trong Dart?Làm cách nào để đọc giao diện điều khiển đầu vào/stdin trong Dart?
Có một số scanf
trong Dart không?
Các readLineSync() phương pháp stdin cho phép để nắm bắt một String từ giao diện điều khiển:
import 'dart:io';
main() {
print('1 + 1 = ...');
var line = stdin.readLineSync(encoding: Encoding.UTF_8);
print(line.trim() == '2' ? 'Yup!' : 'Nope :(');
}
Với lớp phi tiêu M3 như StringInputStream được thay thế bằng Stream, hãy thử này:
import 'dart:io';
import 'dart:async';
void main() {
print("Please, enter a line \n");
Stream cmdLine = stdin
.transform(new StringDecoder())
.transform(new LineTransformer());
StreamSubscription cmdSubscription = cmdLine.listen(
(line) => print('Entered line: $line '),
onDone:() => print(' finished'),
onError: (e) => /* Error on input. */);
}
Sau đây là mã phi tiêu cập nhật nhất để đọc đầu vào từ stdin.
import 'dart:async';
import 'dart:io';
import 'dart:convert';
void main() {
readLine().listen(processLine);
}
Stream readLine() => stdin
.transform(UTF8.decoder)
.transform(new LineSplitter());
void processLine(String line) {
print(line);
}