new ObjectInputStream(new FileInputStream( "C:\\metadata\\metadata.file")); System.out.println("?");抛io异常,怎么回事?
java.io.EOFException at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2165) at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2631) at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:734) at java.io.ObjectInputStream.<init>(ObjectInputStream.java:253) 文件是存在的
一个例子/* * @(#) Test.java * Created on 2004-10-8 * By James Fancy */package jamesfancy;import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.OutputStream; import java.io.Serializable; import java.util.Iterator; import java.util.Vector;/** * Test * * @author James */ public class Test implements Serializable { private Vector data; public Test() { data = new Vector(); data.add("Hi"); data.add("Hello"); data.add("How do you do"); data.add("Good bye"); } public void print() { if (data != null) { Iterator iterator = data.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); } } } public static Test read(InputStream inputStream) throws IOException, ClassNotFoundException { ObjectInputStream ois = new ObjectInputStream(inputStream); Test test = (Test) ois.readObject(); ois.close(); return test; } public static void write(OutputStream outputStream, Test test) throws IOException { ObjectOutputStream oos = new ObjectOutputStream(outputStream); oos.writeObject(test); } public static void main(String[] args) throws IOException, ClassNotFoundException { Test t1 = new Test(); System.out.println("-------- t1 -------"); t1.print(); Test.write(new FileOutputStream("E:\\james\\test.dat"), t1); Test t2 = Test.read(new FileInputStream("E:\\james\\test.dat")); System.out.println("-------- t2 -------"); t2.print(); } }
"C:\\metadata\\metadata.file"));
System.out.println("?");抛io异常,怎么回事?
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2165)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2631)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:734)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:253)
文件是存在的
* @(#) Test.java
* Created on 2004-10-8
* By James Fancy
*/package jamesfancy;import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.io.Serializable;
import java.util.Iterator;
import java.util.Vector;/**
* Test
*
* @author James
*/
public class Test implements Serializable { private Vector data; public Test() {
data = new Vector();
data.add("Hi");
data.add("Hello");
data.add("How do you do");
data.add("Good bye");
} public void print() {
if (data != null) {
Iterator iterator = data.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
}
} public static Test read(InputStream inputStream) throws IOException,
ClassNotFoundException {
ObjectInputStream ois = new ObjectInputStream(inputStream);
Test test = (Test) ois.readObject();
ois.close();
return test;
} public static void write(OutputStream outputStream, Test test)
throws IOException {
ObjectOutputStream oos = new ObjectOutputStream(outputStream);
oos.writeObject(test);
} public static void main(String[] args) throws IOException,
ClassNotFoundException {
Test t1 = new Test();
System.out.println("-------- t1 -------");
t1.print();
Test.write(new FileOutputStream("E:\\james\\test.dat"), t1);
Test t2 = Test.read(new FileInputStream("E:\\james\\test.dat"));
System.out.println("-------- t2 -------");
t2.print();
}
}