誰かがこの問題を解決してくれますか?私はバイナリI/Oクラスではあまりよくありません。バイナリI/Oクラス(バイナリデータファイルのすべての整数を集計)
Exercise 13b_1.datという名前のバイナリデータファイルが、DataOutputStreamでwriteInt(int)を使用して作成されているとします。このファイルには、不特定多数の整数が含まれています。整数の和を求めるプログラムを書く。
誰かがこの問題を解決してくれますか?私はバイナリI/Oクラスではあまりよくありません。バイナリI/Oクラス(バイナリデータファイルのすべての整数を集計)
Exercise 13b_1.datという名前のバイナリデータファイルが、DataOutputStreamでwriteInt(int)を使用して作成されているとします。このファイルには、不特定多数の整数が含まれています。整数の和を求めるプログラムを書く。
ここには簡単な解決策があります。
FileInputStream fis = new FileInputStream("13b_1.dat");
DataInputStream dis = new DataInputStream(fis);
int count = 0;
try {
while (true) {
dis.readInt();
count++;
}
} catch (EOFException e) {}
System.out.println("There are " + count + " integers.");
効率的に、1つの整数が4バイトであるため、一連のバイトを読み込み、バイト数を4で割ることができます。
プログラミングは主にバイナリで行われていますが、あなたはいつも世界にいます。だから、何かを試して、あなたに不明な細部について質問してください。 – ruslik
ヒント:「writeInt」と呼ばれるメソッドで記述されたものを読み取るのに、どのような方法が使用されると思いますか? –