3

Dart(コンソール)(最新のr22223)での端末入力(質問と応答)の例を教えてください。私が見た唯一の例は、機能していないように見えるか、不完全です。

4

2 に答える 2

4

別のオプションは次のとおりです。

import "dart:async";
import "dart:io";

void main() {
  stdout.write('> ');      // stdout.write() rather than print() to avoid newline
  new StringDecoder().bind(stdin).listen((str) { // Listen to a Stream<String>
      print('"${str.trim()}"');                // Quote and parrot back the input
      stdout.write('> ');                      // Prompt and keep listening
  }, onDone: () => print('\nBye!'));           // Stream is done, say bye
}

これは、Linux と Windows で正常に動作するようです。プロンプトで入力したものは何でも引用符で返します。入力することで終了できますEOF( control-DLinux およびその他の UNIX 系システムでは、Windows ではその後にcontrol-Z続きenterます)。

于 2013-05-07T05:39:18.080 に答える
2
import "dart:async";
import "dart:io";

void main() {
  print("Do you want to say something?");
  Stream<String> input = stdin.transform(new StringDecoder());
  StreamSubscription sub;
  sub = input.listen((user_input) {
    print("Really? \"${user_input.trim()}\"? That's all you have to say?");
    sub.cancel();
  });
}

どの例を見つけましたか? また、正確にどのように間違っていましたか?

于 2013-05-06T21:23:24.590 に答える