0

これまで端末から Java を使用したことはありませんし、Java 用にコーディングしたこともありません。私の質問は簡単です: 呼び出し形式が

cat  file.txt  |  java  YourMainClass

残りのコードを順調に実行しています。必要なのは、指定されたファイル名をメイン メソッドに取り込むことだけです。

4

2 に答える 2

4

catコマンドはファイルの内容を表示するため、System.inバッファーを使用して、そのコマンドからのデータをキャプチャする必要があります。System.inを指すBufferedReaderを使用して、データをループして処理できます。

この例を見てください

public class ReadInput {
    public static void main(String[] args) throws IOException {
    BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
        String x = null;  
        while( (x = input.readLine()) != null ) {    
            System.out.println(x); 
        }    
    }
}  
于 2012-10-21T15:54:30.587 に答える
1

System.inからの出力としてから読み取ろうとしているcat場合、次のことができます。

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

String line;
while ((line = br.readLine()) != null) {
   // use line...
}
于 2012-10-21T15:50:38.837 に答える