これまで端末から Java を使用したことはありませんし、Java 用にコーディングしたこともありません。私の質問は簡単です: 呼び出し形式が
cat file.txt | java YourMainClass
残りのコードを順調に実行しています。必要なのは、指定されたファイル名をメイン メソッドに取り込むことだけです。
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);
}
}
}
System.in
からの出力としてから読み取ろうとしているcat
場合、次のことができます。
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String line;
while ((line = br.readLine()) != null) {
// use line...
}