【发布时间】:2011-10-17 17:27:09
【问题描述】:
我尝试将文件作为字节数组读取并通过套接字连接通过网络发送, 我在从文件读取后(在发送之前)打印了字节的值,并在从套接字接收到它之后打印了字节的值......这是不同的!收到错误的值我不知道为什么
发送前的样本字节: 21, 0, 52, 0 接收后的样本字节: -8, -1, -4, -1
我使用 write(byte[] b); 发送了字节OutputStream 类的 并使用 read(byte[] b, int off, int len) 接收字节; InputStream 类的。
谁能帮帮我?
【问题讨论】:
-
Voo 对缺乏信息表示失望。如果他们看到了您的源代码,您可能会犯下某人可能会立即认出的错误。您是否尝试读取超过 4 个字节?我怀疑您阅读的内容与您所写的内容无关-完全是另一回事-但我也不知道它是什么。
-
正如 voo 和 ed 所说,我们需要做的远不止这些。创建一个能重现问题的最小的测试程序,然后发布它。我刚刚制作了一个快速测试程序,它使用相同的方法发送和接收这些字节,并且运行良好。
-
这种网络连接是否发生在不同的操作系统之间?这可能是字节序问题吗?
-
你没有做你认为你正在做的事情。字节不可能改变你建议的方式,值没有符号,字节序在这里无关紧要
标签: java sockets stream bytearray byte