gpt4 book ai didi

java.io.StreamCorruptedException : invalid stream header: FAD08000

转载 作者:行者123 更新时间:2023-12-01 09:34:11 31 4
gpt4 key购买 nike

我正在尝试通过套接字发送一些数据。前 3 个数据项已成功发送,但当我尝试发送 double 组时,会引发异常。让我们来看代码:客户端:

    Socket clisock=new Socket("127.0.0.1",1341);
Scanner sc1=new Scanner(clisock.getInputStream());
PrintStream p=new PrintStream(clisock.getOutputStream());
p.println(num_doc);
p.flush();

p.println(TD);
p.flush();

p.println(num_Decimal);
p.flush();
ObjectOutputStream os=new ObjectOutputStream(clisock.getOutputStream());
os.writeObject(server_index);

服务器端:

    int number;
long keyword, keywords;
double[][] server_ind;
ServerSocket s1=new ServerSocket(1341);
Socket ss=s1.accept();
Scanner sc=new Scanner(ss.getInputStream());
number=sc.nextInt();

keyword=sc.nextLong();

keywords=sc.nextLong();

ObjectInputStream is = new ObjectInputStream(ss.getInputStream());
server_ind=(double[][])is.readObject();

异常:java.io.StreamCorruptedException:无效的流 header :FAD08000

注意:在发布此问题之前,我已经搜索过类似的异常,但尚未成功删除异常。

最佳答案

扫描仪经过缓冲,因此它将读取尽可能多的可用内存(最多可达其缓冲区大小)

这意味着,如果您不想让扫描程序读取所有数据,而是将其中一些数据作为二进制对象读取,那么您就会遇到问题。

一个更简单的解决方案是坚持一种流类型。当您需要对象流时,只需端到端地使用它就不会出现这种困惑。

java.io.StreamCorruptedException: invalid stream header: FAD080

这意味着扫描器已消耗了对象流 header ,因此当对象流尝试读取某些数据时,它会读取流中更远的地方的某些数据。

关于java.io.StreamCorruptedException : invalid stream header: FAD08000,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39145280/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com