【问题标题】:java.io.StreamCorruptedException: invalid stream header: 4D6F7374java.io.StreamCorruptedException:无效的流标头:4D6F7374
【发布时间】:2013-05-23 08:24:25
【问题描述】:

Java代码是

        ObjectInputStream ois=new ObjectInputStream(new FileInputStream("src/Stringdata.txt"));    
        String s=(String)ois.readObject();
        System.out.println(s.toString());

        } catch (IOException e) {

            e.printStackTrace();
        } catch (ClassNotFoundException e) {

            e.printStackTrace();
        }

这里出现 java.io.StreamCorruptedException: invalid stream header: 4D6F7374 这个错误请帮帮我

【问题讨论】:

    标签: serialization java-io


    【解决方案1】:

    An ObjectInputStream deserializes primitive data and objects previously written using an ObjectOutputStream. src/Stringdata.txt 可能不是以前使用 ObjectOutputStream 编写的序列化对象文件。您可能想改用InputStreamReader

    【讨论】:

      【解决方案2】:
      java.io.StreamCorruptedException: invalid stream header: 4D6F7374 
      

      4D6F7374 是“大多数”。

      这不是序列化对象的文件。它是一个文本文件。使用BufferedReader.readLine()阅读。

      【讨论】:

        【解决方案3】:

        你的问题是: 服务器使用 DataOutputStream/DataInputStream 发送/接收数据,而您正尝试使用 ObjectOutputStream/ObjectInputStream 在客户端读取它

        只需确保服务器/客户端套接字使用相同的输入/输出流类型进行读取/写入。

        哈利勒。

        【讨论】:

          猜你喜欢
          • 2011-02-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多