【发布时间】:2011-12-03 19:40:50
【问题描述】:
*我的任务是编写一个程序,该程序存储一个包含五个 int 值 1、2、3、4 和 5 的数组,一个用于当前时间的 Date 对象和一个 double 值 5.5。到名为 Exercies19_2.txt 的文件中。接下来,我要在程序中编写一个方法,打开Exercise19_2.txt,读取数据并显示到命令窗口。当我运行我的程序时,我不断得到这个:
java.io.ObjectInputStream.readObject0 处的线程“main”java.io.OptionalDataException 中的异常(未知来源) 在 java.io.ObjectInputStream.readObject(未知来源) 在 WriteArray.main(WriteArray.java:29)。
你能帮我弄清楚我做错了什么吗??????这是我写的:
import java.io.*;
public class WriteArray {
public static void main(String[] args)throws ClassNotFoundException,IOException {
int[] numbers = {1, 2, 3, 4, 5};
//Create an output stream for file
ObjectOutputStream output = new ObjectOutputStream
(new FileOutputStream("Exercises19_2.txt", true));
//Write to file
output.writeDouble(5.5);
output.writeObject(numbers);
output.writeObject(new java.util.Date());
output.writeUTF("Exercises19_2.txt");
//Close the stream
output.close();
//Create an input stream for file
ObjectInputStream input = new ObjectInputStream
(new FileInputStream("Exercises19_2.txt"));
int[]newNumbers = (int[])(input.readObject());
for (int i = 0; i < newNumbers.length; i++)
System.out.println("Integers: " + newNumbers[i] + " ");
String FileName= input.readUTF();
double Double = input.readDouble();
java.util.Date date = (java.util.Date)(input.readObject());
System.out.println("DateTime: " + date);
//Display the output
System.out.println("Double: " + " " + input.readDouble());
System.out.println("FileName: " + " " + input.readUTF());
//Close the stream
input.close();
}
}
【问题讨论】:
标签: java arrays serialization