2017-06-20 10 views
0

「DeitelへのDeitel How To Program in Java 10ed」にJavaの言語を教えていただきありがとうございます。 しかし、ファイル内のオブジェクトのストリームを理解することにはいくつか問題があります。 ObjectOutputStreamは、ファイルにオブジェクトを書き込むことができることを理解しています。 Bookの単語を使用する:ObjectOutputStreamは、Streamオブジェクトで初期化されます。これはファイルにbyteを書き込むためです。 代わりにObjectInputStreamを使用すると、ファイル内のオブジェクトを読み取ることができます。 ObjectInputStreamは、ファイルからcatchバイトのStreamオブジェクトで初期化されます。 しかし、Streamオブジェクトとは何ですか? これを出力するコードです:Javaシリアル化:Object InputStream/Object Output Streamの使い方

output = new ObjectOutputStream(Files.newOutputStream(Paths.get("clients.ser"))); 

が、これは入力にコードです:Files.newOutputStreamある

input = new ObjectInputStream(Files.newInputStream(Paths.get("clients.ser")); 

何?それは何を返すのですか?

注意 のおかげでは、(あなたはそれが非常に良いことだ鉱山よりも優れたJavaを学習するために私の本を教えている場合!)

(私はイタリア語だ、ので、多分私の英語があまりよくないでしょう)

+1

非常に重要なソースは、クラスのJavadocのですhttps://docs.oracle.com/javase/8/docs/api/java/nio/ file/Files.html#newInputStream-java.nio.file.Path-java.nio.file.OpenOption ...- – Berger

答えて

1

このメソッドは、ファイルを開くか作成し、ファイルにバイトを書き込むために使用される出力ストリームを返します。この返されたストリームはスレッドセーフです。詳細については

参照してください:情報の Java Doc

+0

「出力ストリームを返す」と言うのは、「ファイルへの参照を返す」と言うのは正しいと思いますか? おそらく私の問題は、私がCでプログラムを始めたので、FILEポインタと思う方が簡単だからです。 –

+0

はい、そうです、それはファイルへの参照を返します。 –

0

Files.newOutputStream OutputStreamオブジェクトを作成し、引数のPathFilenewOutputStream(Path path, OpenOption... options)という引数を書き込むことができます。

関連する問題