Dart コンソール アプリを作成しましたが、標準入力から矢印キーやファンクション キーなどのキーコードを処理する必要がありますか? 私が見たサンプルは通常、文字列ベースです。
Stream readLine() => stdin.transform(UTF8.decoder).transform(new LineSplitter());
readLine().listen(processLine);
次のような生の整数を取得することを期待して、上記のサンプルを変更しました。
Stream readInts() => stdin;
readInts().listen(processInts);
void processInts(List<int> kbinput) {
for (int i=0;i<kbinput.length;i++){
print ("kbinput:${kbinput[i]}");
}
}
stdin はすべての ASCII キーコードではなく、印刷可能な文字のみを提供しているようです。標準入力からできない場合、キーコードを使用してネイティブ拡張内でストリームを作成してロードできますか? コンソール アプリはどのようにしてキーを押したときの ASCII キーコードを取得できますか? ご協力いただきありがとうございます!