標準入出力/パイプによるデータを受け取る方法
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#navi(../)
* パイプ(|)によるデータの受取方法 [#tba41f9f]
Linux(*BSD)などのシェルでコマンドとコマンド間でデータを渡...
Javaで作成したプログラムにパイプ経由でデータを渡すサンプ...
#contents
* system.inからデータを取得する [#kf3b452d]
以下のサンプルソースの通り、system.inにデータがあるか(パ...
その後、InputStreamReader, BufferedReaderをつかって一行ず...
本サンプルソースでは、読み込んだ行の先頭に行番号を%04dと...
尚、文字コードはLinux(Ubuntu)にて動作確認を行ったので、UT...
#ref(PipeIn.java)
class PipeIn {
public static void main(String[] args) {
try {
if (System.in.available() != 0) {
InputStreamReader in = new InputStreamRe...
BufferedReader b = new BufferedReader(in);
String l;
int i = 1;
while (null != (l = b.readLine())) {
System.out.printf("%04d: %s\n", i, l);
i++;
}
} else {
System.out.println("No input by the pipe...
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
* 実行例 [#pb4f61ae]
以下に本サンプルソースのコンパイルおよび実行結果を記しま...
- Linux(*BSD)コマンドのprintfコマンドを利用しhello\nworld...
今回作成したサンプルの入力とした時の実行例です。
$ printf "hello\nworld" | java PipeIn
0001: hello
0002: world
- 本サンプルソースをcatで渡し、headコマンドで先頭から10行...
$ cat PipeIn.java | java PipeIn | head -10
0001: import java.io.*;
0002:
0003: class PipeIn {
0004: public static void main(String[] args) {
0005: try {
0006: if (System.in.available() != 0) {
0007: InputStreamReader in = new InputSt...
0008: BufferedReader b = new BufferedRea...
0009: String l;
0010: int i = 1;
- パイプによる入力がない場合。
$ java PipeIn
No input by the pipe.
使用したJDKバージョン
$ java -version; javac -version
openjdk version "9-internal"
OpenJDK Runtime Environment (build 9-internal+0-2016-04-...
OpenJDK Server VM (build 9-internal+0-2016-04-14-195526....
javac 1.8.0_131
以上、Javaでパイプによる入力(STDIN)を扱うサンプルソースで...
終了行:
#navi(../)
* パイプ(|)によるデータの受取方法 [#tba41f9f]
Linux(*BSD)などのシェルでコマンドとコマンド間でデータを渡...
Javaで作成したプログラムにパイプ経由でデータを渡すサンプ...
#contents
* system.inからデータを取得する [#kf3b452d]
以下のサンプルソースの通り、system.inにデータがあるか(パ...
その後、InputStreamReader, BufferedReaderをつかって一行ず...
本サンプルソースでは、読み込んだ行の先頭に行番号を%04dと...
尚、文字コードはLinux(Ubuntu)にて動作確認を行ったので、UT...
#ref(PipeIn.java)
class PipeIn {
public static void main(String[] args) {
try {
if (System.in.available() != 0) {
InputStreamReader in = new InputStreamRe...
BufferedReader b = new BufferedReader(in);
String l;
int i = 1;
while (null != (l = b.readLine())) {
System.out.printf("%04d: %s\n", i, l);
i++;
}
} else {
System.out.println("No input by the pipe...
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
* 実行例 [#pb4f61ae]
以下に本サンプルソースのコンパイルおよび実行結果を記しま...
- Linux(*BSD)コマンドのprintfコマンドを利用しhello\nworld...
今回作成したサンプルの入力とした時の実行例です。
$ printf "hello\nworld" | java PipeIn
0001: hello
0002: world
- 本サンプルソースをcatで渡し、headコマンドで先頭から10行...
$ cat PipeIn.java | java PipeIn | head -10
0001: import java.io.*;
0002:
0003: class PipeIn {
0004: public static void main(String[] args) {
0005: try {
0006: if (System.in.available() != 0) {
0007: InputStreamReader in = new InputSt...
0008: BufferedReader b = new BufferedRea...
0009: String l;
0010: int i = 1;
- パイプによる入力がない場合。
$ java PipeIn
No input by the pipe.
使用したJDKバージョン
$ java -version; javac -version
openjdk version "9-internal"
OpenJDK Runtime Environment (build 9-internal+0-2016-04-...
OpenJDK Server VM (build 9-internal+0-2016-04-14-195526....
javac 1.8.0_131
以上、Javaでパイプによる入力(STDIN)を扱うサンプルソースで...
ページ名: