我想从我的Java TCP-Client发送TCPMessage到我的Visual Basic服务器。将字符串从Java发送到.NET BinaryReader.ReadString
服务器使用BinaryReader.ReadString()函数。
http://msdn.microsoft.com/en-US/library/system.io.binaryreader.readstring.aspx
的ReadString函数期望字符串的大小的7位长度的前缀。
目前这是我的代码,但服务器无法识别该消息。
public void sendMessage(String message) {
if (out != null && !out.checkError()) {
out.print(message.length());
out.println(message);
out.flush();
}
}
而且我无法更改整个服务器架构以使其识别字符串,例如来自ReadLine。
希望有人能够帮助,现在尝试几个小时。
你不能仅仅使用Java的.NET二进制序列化,这是我所看到的主要问题。是否有任何理由试图使用BinaryReader? – 2014-09-25 23:11:42
这是一个可以处理断开连接的客户端的异步服务器示例。 我一直在自己的服务器上处理断开连接或重新连接的问题,它总是崩溃。 但是这个样本我找到了工作,现在我已经添加了一些更多的代码,这就是为什么我不想再次从头开始的原因。 而我从中得到样本的人使用二进制阅读器来管理它。 我已经解决了将数据从java客户端发送到VB服务器的问题。 现在我试图找出如何避免使用bufferedreader.readline方法从VB服务器接收数据。 更多请参阅下面的评论 – mademyday 2014-09-25 23:38:21
恐怕你对.net文档的解释是错误的。看到这[其他答案](http://stackoverflow.com/q/19710688/697630)。 – 2014-09-26 00:05:03