文字列でファイルを書き込もうとしています。しかし、私が読んだとき、それは正方形ともので奇妙に見えます。私はペーストをコピーできませんでした!ここでファイルを読み込もうとしています
はコードです:
import java.io.*;
public class ObjectOutputStreamDemo {
public static void main(String[] args) throws ClassNotFoundException {
try {
//Now Im writing
ObjectOutputStream output = new ObjectOutputStream(new FileOutputStream("fruit.dat"));
String ord[] = { "Banana", "Mango", "Apple", "Passionfruit","Orange" };
for (int i = 0; i < 5; i++) {
output.writeObject(ord[i]);
}
output.close();
//Now Im trying to read.
BufferedReader in = new BufferedReader(new FileReader("fruit.dat"));
String str;
while ((str = in.readLine()) != null) {
System.out.println(str);
}
} catch (IOException e) {
System.out.println("Problem with file.");
}
}
}
短い答え: 'ObjectOutputStream'を使ってファイルに書き込む場合は、' BufferedReader' **ではなく、 'ObjectInputStream'を使ってファイルを読み込みます。 'Reader'を使ってファイルを読みたいなら、あなたは' Writer'でファイルを書くべきです。 –