すいません、少しお時間を頂きたいと思います。今コマンドライン上でファイルを作ろうとしています。ソースは結城浩氏の著書で使われている、ネット上から無料でダウンロードできるソースを使っています。以下の通りです。
import java.io.*;
public class FileWrite{
public static void main(String[] args) {
if (args.length != 1) {
System.out.println("使用法:java WriteFile1 作成ファイル");
System.out.println("例:java WriteFile1 output.txt < input.txt");
System.exit(0);
}
String filename = args[0];
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(filename)));
String line;
while ((line = reader.readLine()) != null) {
writer.println(line);
}
reader.close();
writer.close();
} catch (IOException e) {
System.out.println(e);
}
}
}
ところが、これをコンパイルして実行までは出来るのですが、いざ因数(=ファイル名)を与えるとコマンドプロンプトがプロンプトのない状態で停止してしまいます。
javacのあるディレクトリ>java FileWrite abc.jsp
と入力しています。(FileWriteはクラス名です。)
また、拡張子の有無は関係ないようです。
何が悪いのでしょうか?
よろしくお願いします。
No.4ベストアンサー
- 回答日時:
>コピーしたことになるのでしょうか。
。そうですね。コピーしたことになります。
>ただ、キーボードからの入力はどうすればいいのか分かりませんでした。
キーボードからの入力の場合
java FireWrite output.txt
として入力待ちになったら適当に文字を入力(改行もOK)して
Windows の場合 CTRL+Z を押すと入力終了できます。
>また、コピーではなく指定した内容を新しいファイルに書き出すことは出来ないでしょうか?
意味がよくわかりませんが、
キーボードからの入力をファイルに書き出すという意味なら前述の通りです。
ファイルの一部、最初から10行とか最後の10行という場合には、
引数としてそういうコマンドを受け付けるようにして、プログラムでそのような処理をします。
何度もアドバイスありがとうございました。
答えて頂いたことがまさに聞きたいことでした。
本当に助かります。ヽ(*⌒∇⌒*)ノ::
ファイルの一部を表示するために因数を受け付けるプログラミング化する方法もお聞きしたい気持ちもあるのですが、長くなりすぎるので一旦この質問を終了します。また教えて下さい。(ctrl+cで終了できました。)
No.3
- 回答日時:
>ご回答頂いた「java FileWrite abc.jsp < abc.zip」のabc.jspは、(1)はじめに用意しておく必要がありますか?(2)どこに作成されますか(FileWrite.class)のあるフォルダでしょうか?
また、abc.zipは何をどこに用意すればいいのでしょうか?
(1)
abc.jsp は、これから作成されるファイルなので、あらかじめ存在する必要はないです。
(2)
カレントディレクトリに作成される。と思います。
FileWrite.class のあるフォルダというより、
java FileWrite を実行しているフォルダ。
>abc.zipは何をどこに用意すればいいのでしょうか?
新しくファイル名を付けたいファイルをカレントディレクトリに。
abc.zip は、例として書いただけなので、特に意味はありません。
src.txt でもなんでもいいです。
出力ファイルの元になるファイルです。
リダイレクトしない場合には、キーボードからの入力がそのままファイル出力になることになります。
この回答への補足
できました!
input.txtを用意し、内容を「ジローニモ犬」としました。
次にコマンドで「java FileWrite output.txt < input.txt」とすると同一内容を持ったoutput.txtというファイルが作成されました。コピーしたことになるのでしょうか。。
ただ、キーボードからの入力はどうすればいいのか分かりませんでした。
また、コピーではなく指定した内容を新しいファイルに書き出すことは出来ないでしょうか?
何度も質問してしまい申し訳ありません。m(__)m
No.2
- 回答日時:
このプログラムは、標準入力からの入力にファイル名を付けて保存するプログラムです。
System.in が標準入力になります。
そのために、
java FileWrite abc.jsp
のように実行した場合にはキー入力(標準入力は、キーボード)待ちになります。
プログラム中の使用法のようにファイルから標準入力を与えたい場合は、
java FileWrite abc.jsp < abc.zip
のように標準入力をリダイレクトする必要があります。
この回答への補足
ありがとうございます。
問題点がどこなのか見えてきました。
ただ、「java FileWrite 標準出力」で検索してみてもキーボードやコマンドラインからの入力例しか出てきません。ご回答頂いた「java FileWrite abc.jsp < abc.zip」のabc.jspは、(1)はじめに用意しておく必要がありますか?(2)どこに作成されますか(FileWrite.class)のあるフォルダでしょうか?
また、abc.zipは何をどこに用意すればいいのでしょうか?自分でも探してみますが、教えていただきたいです。よろしくお願いします。m(__)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- Java java final 1 2022/06/10 22:49
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- C言語・C++・C# PC画面を録画するプログラムでdllの読み込みエラー 1 2023/04/22 08:31
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
- C言語・C++・C# C# で、あるフォルダー内にあるすべてのテキストファイルを別のフォルダーにコピーする。 4 2022/11/21 13:23
- Java JavaのSingletonパターンのprivateの持つ意味が分かりません。 5 2022/06/12 10:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
配列にnullを代入すると、null...
-
プログラミングの問題です。大...
-
eclipseで作ったプログラムを他...
-
eclipse実行ができない
-
Processingでマウスクリックで...
-
JSFタグのfタグとは
-
JAの支部?地域の農協のカード...
-
問題作成のWebアプリの作り方を...
-
正規表現について質問です。 カ...
-
下記問題の答えが"D"になる意味...
-
JaneStyleのスレッドが見れなく...
-
キー入力について
-
jdk17.06のインストーラーが起...
-
えハミルトン路と全域木のちが...
-
CSV出力を画面から選択したデー...
-
ショートカットキーについて
-
list の空は [] ってあわらすのに
-
あんまりお料理しないのに台所...
-
質問です。 配列が100以上の場...
-
次のhtml・cssでspan内の文字を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラミングの問題です。大...
-
マイクラでPythonのプログラミ...
-
配列にnullを代入すると、null...
-
jdk17.06のインストーラーが起...
-
Eclipse 動的プロジェクトで404...
-
list の空は [] ってあわらすのに
-
下記問題の答えが"D"になる意味...
-
JaneStyleのスレッドが見れなく...
-
正規表現について質問です。 カ...
-
eclipseで作ったプログラムを他...
-
改行含むテキストの表示の仕方
-
リレーションエンティティクラ...
-
質問です。 配列が100以上の場...
-
次のhtml・cssでspan内の文字を...
-
キー入力について
-
自作Androidアプリのデータ引き...
-
問題作成のWebアプリの作り方を...
-
eclipse実行ができない
-
変数名とDBカラム名の関係性に...
-
デバッグツールの具体例を教え...
おすすめ情報