0


0

JavaバイナリファイルwriteUTF …​ 仕様を説明する

私は自分でJavaを勉強しています。 演習の1つは次のとおりですが、私はそれが何を求めているのか本当に理解していません。 これをより詳細で簡単な言葉で説明できるスマートなJavaの達人はいますか? ありがとう

タイプがintまたはdoubleである数値を含むバイナリファイルがあるとします。 ファイル内の数字の順序はわかりませんが、それらの順序はファイルの先頭の文字列に記録されます。 文字列は、後続の数値のタイプの順に、intを表す文字i、doubleを表す文字dで構成されます。 文字列はメソッドwriteUTFを使用して書き込まれます。

たとえば、文字列「iddiiddd」は、ファイルに次の8つの値が含まれることを示しました。1つの整数、2つのdouble、2つの整数、3つのdouble。

このバイナリファイルを読み取り、1行に書き込まれた値の新しいテキストファイルを作成します。

1 Answer


3


「writeUTF」は「DataOutputStream」のメソッドであり、「DataInputStream」の「readUTF」メソッドを使用して対応するデータを読み込むことができます。 したがって、バイナリファイルを読み取る手順は次のとおりです。

  • 新しい `DataInputStream`を開きます

  • `readUTF`を使用して文字列を読み込む

  • 文字列の文字を1つずつループします。

  • 文字が「i」の場合、「readInt()」を使用して「int」を読み込みます。

  • 文字が「d」の場合、「readDouble()」を使用して「double」を読み込みます。

  • `DataInputStream`を閉じます。

また、これらをテキストファイルに書き出す必要があります。テキストファイルには「FileWriter」を使用できます。