【发布时间】:2014-12-07 08:59:03
【问题描述】:
C端:
unsigned char myBuffer[62];
fread(myBuffer,sizeof(char),62,myFile);
send(mySocket, myBuffer, 62,0);
JAVA端:
bufferedReader.read(tempBuffer,0,62);
现在在 JAVA 程序中,我在 C 程序中接收(使用套接字)值小于 0x80 没有问题,但我在 C 程序中收到等于或大于 0x80 的所有值的 0xFD 值。
我需要完美解决这个问题。
【问题讨论】:
-
Java 在字符编码方面比 C 更明确。您必须知道您的 C 程序使用的字符编码,以便您的 Java 程序使用相同的编码来解释字节。
-
@Raedwald 如果这是文本而不是二进制数据; OP不告诉
-
好的,那你告诉我们你想做什么呢?对我来说,这看起来像 XY problem
-
我想将字节流从 C 程序传递到 JAVA 程序,InputStream 解决了我的问题。谢谢! @fge
标签: java c++ c sockets unsigned-char