2012-06-20 209 views

答えて

12

readLineSync()STDIN方法は、コンソールから文字列をキャプチャすることができます:

import 'dart:io'; 

main() { 
    print('1 + 1 = ...'); 
    var line = stdin.readLineSync(encoding: Encoding.UTF_8); 
    print(line.trim() == '2' ? 'Yup!' : 'Nope :('); 
} 
3

StringInputStreamのようなM3ダーツクラスはStreamに置き換えられると、これを試してみてください。

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. */); 


} 
5

以下は、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); 
} 
関連する問題