当我使用这个shipet时:
InputStream fs=new FileInputStream("some_file.txt");
ObjectInputStream is=new ObjectInputStream(fs);
Java显示错误:
>java.io.StreamCorruptedException: invalid stream header: 3130300A
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:857)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:349)
FileInputStream
运行正常。 DataInputStream
也有效。
代码在main方法中运行,并且没有任何其他代码。我使用了另一个文件,例如pom.xml,错误保持不变。
我可以使用DataInputStream
代替ObjectInputStream
,但我不了解此类行为的原因。
答案 0 :(得分:2)
您无法使用ObjectInputStream读取文本文件。您只能编写使用ObjectOutputStream创建的数据,或者使用遵循相同格式协议的其他设备。