gpt4 book ai didi

java - 在java中通过套接字流接收错误的字节值

转载 作者:行者123 更新时间:2023-12-02 08:08:37 24 4
gpt4 key购买 nike

我尝试将文件作为字节数组读取并通过套接字连接通过网络发送,我在从文件读取之后(发送之前)打印了字节的值,并在从套接字接收到它之后打印了字节的值......这是不同的!它以错误的值接收,我不知道为什么

发送前的示例字节:21、0,52、0接收后的样本字节:-8,-1,-4,-1

我使用 write(byte[] b) 发送了字节; OutputStream 类并使用 read(byte[] b, int off, int len); 接收字节InputStream 类。

谁能帮我吗?

最佳答案

你可以试试

ServerSocket ss = new ServerSocket(0);
Socket c = new Socket("localhost", ss.getLocalPort());

byte[] bytes = {21, 0, 52, 0};
c.getOutputStream().write(bytes);
c.close();

byte[] bytes2 = new byte[4];
Socket s = ss.accept();
ss.close();

new DataInputStream(s.getInputStream()).readFully(bytes2);
System.out.println(Arrays.toString(bytes2));
s.close();

打印

[21, 0, 52, 0]

关于java - 在java中通过套接字流接收错误的字节值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7797298/

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