我正在尝试从我的Java应用程序中读取从C#应用程序发送的byte[]
。Java socket从C#读取字节#
但是,当我在C#中编码string
到byte[]
,并使用下面的代码在Java中读取它时,我得到的都是最后一个字符。这是为什么?
的Java代码接收:
int data = streamFromClient.read();
while(data != -1){
char theChar = (char) data;
data = streamFromClient.read();
System.out.println("" + theChar);
}
C#代码发送:
public void WriteMessage(string msg){
byte[] msgBuffer = Encoding.Default.GetBytes(msg);
sck.Send(msgBuffer, 0, msgBuffer.Length, 0);
}
我的猜测是你没有发送最后一个字符。 –
^是的大声笑。 我们可以看到您的发送代码吗? – Mozzie
我将C#代码添加到帖子中 –