2

将 inputStream 转换为 ObjectInputStream 时出现此错误。请帮助我解决这个问题。

我的代码:

InputStream isSchema = Thread.currentThread()
                    .getContextClassLoader().getResourceAsStream("schema.xsd");
            ObjectInputStream inputStream = new ObjectInputStream(isSchema);

例外:

java.io.StreamCorruptedException: invalid stream header: 3C787364
4

1 回答 1

1

3C787364十六进制是<xsd.

schema.xsd不是以前使用ObjectOutputStream. 您必须使用InputStreamReader.

只是一个例子

InputStream inputStream = new FileInputStream("c:\\data\\input.txt");
Reader reader = new InputStreamReader(inputStream);

int data = reader.read();
while(data != -1){
    char theChar = (char) data;
    data = reader.read();
}

reader.close();  
于 2015-04-21T10:54:43.133 回答