DataOutputStreamの場合、コードを書きました。Java DataOutputStream
しかし、コンソールには私が期待したものが表示されませんでした。
コンソールshow No file given
と、IDと名前の書き込みを2番目のtry{}
に表示したいと考えています。
Fileの出力ストリームにトラップしたようです。
...私が間違って何を見つける
ここimport java.io.*;
public class DOutPut {
public static void main(String args[]) {
DataOutputStream dos;
FileOutputStream fos;
int id = 100;
String name = "Tanaka";
if (args.length <= 0) {
System.out.println("No file given");
System.exit(1);
}
try {
fos = new FileOutputStream(args[0]);
dos = new DataOutputStream(fos);
try {
dos.writeInt(id);
System.out.println("wrote a id: " + id);
dos.writeUTF(name);
System.out.println("wrote a name: " + name);
} catch (IOException e) {
// TODO: handle exception
System.err.println("IO error");
System.exit(1);
} finally {
fos.close();
dos.close();
}
} catch (IOException e) {
// TODO: handle exception
System.err.println("Opening/Closing error");
System.exit(1);
}
}
}
を助けてください、私は解決策を見つけました。私の質問に答えてくれた皆様に感謝します。
引数を指定して実行する必要があります。コードfos = new FileOutputStream(args[0])
には引数が必要です。
EclipseでJavaコードを記述しています。実行時設定を使用できます。
コンソールには何が表示され、何を期待しましたか? – immibis
コンソールに「ファイルがありません」と表示されます。確かにあなたはそれが何を意味するか知っていなければなりません。 – immibis
@immibis私はまだそれを取得していません... argsの長さが0よりも短い場合は、ファイルが存在しないことを意味しますので、 'no file given'を出力します。しかし、私の期待は' :100、名前を書いた:Tanaka' ... –