2011-12-01 28 views
0

我目前正在为一个项目在学校开发一个简单的聊天客户端和服务器。现在我在发送/读取信息以及objectoutputstream和objectinputstream时遇到了麻烦,作为一个例子说明为什么我希望这样可以验证发送和接收完整的聊天消息。Java - 读写流标头

因此,我查找了任何方法来添加标头到我通过网络发送的数据包,并偶然发现了方法readStreamHeader()和writeStreamHeader()。我的第一个问题是,这两种方法会做我需要他们做的事吗?其次,有没有关于这两个实际做法的文件,我一直无法充分了解它们。第三,实现我的目标有没有更简单/更好/更正确的方法?

我所需要的只是在右侧/任何方向稍微移动一下,现在就卡住了。希望我提供了一个足够好的问题,第一次尝试在这里!

回答

0

为什么您需要用于此目的的streamheader?你可以简单地编写一个套接字程序发送带有TCP连接的对象。我认为你不必为聊天客户端和服务器去深入(数据包级别)。 这是一个简单的demonstration

+0

除了在服务器和客户端之间发送消息之外,我还需要服务器能够发送连接的用户列表以及您可以加入和聊天的主题列表。我怎样才能向服务器发送请求,以便它知道发回的是什么,或者如何处理为特定主题绑定的消息。我可能会以错误的方式解决它?如果是这样,那么更好的方法是什么? – user1075759

+0

你是否检查过我用“demostration”标记的链接?有完整的代码。但是你需要明白,你可以发送客户端到服务器的对象流,它保存你需要的所有信息。 – nebula

+0

是的,看到了链接,我已经基于该代码和其他类似示例上的大部分内容。但是,如果我想发送一个msg对象到服务器,然后我想发送一个更新的用户列表的请求。我怎么能告诉服务器什么是什么? – user1075759