java - ObjectInputStream 无效的流 header

标签 java

当我使用这个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,但我不明白这种行为的原因。

最佳答案

您无法使用 ObjectInputStream 读取文本文件。您只能写入使用 ObjectOutputStream 或遵循相同格式协议(protocol)的其他设备创建的数据。

关于java - ObjectInputStream 无效的流 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45524541/

相关文章:

java - 如何为 Android SwitchPreference 添加背景颜色?

java - Win32 STD_INPUT_HANDLE/ReadConsoleInput : How to write to it from Java?

java - SecureAST定制器 : how to restrict loops?

java - 将图像与实际屏幕进行比较

java - 从自定义转换器访问 Mule 全局变量

java - 如何在 Maven 原型(prototype) XML 中调用 Java 方法

java - 使用 JExcelApi 导入工作表

java - 从 Java 小程序访问输入类型 ="file"完整路径

java - 如何调试 HTTP 错误 503 - Jetty

java - android客户端之间实时通信的最佳方式是什么?