从网络到String的字节数

时间:2017-05-26 13:23:46

标签: java byte inputstream

我有一份学校作业,我必须通过网络开展申请。我们可以用Java或C(或两者)来做。 我们已经获得了计算机之间通信的确切协议。 以下是此协议消息的示例:

[REGIS␣id␣port␣pass+++] 

在此消息上,id必须精确地在8个字节上,4个字节上的端口,2个字节的传递,5个字节的REGIS和3个字节的+++。 要读取此消息,我使用InputStream对象和read()方法,因此我得到一个byte []数组。

我的问题是:我可以直接从byte []数组构造一个String对象,并使用正则表达式来检查消息是否正确构造?

其他问题是:我可以创建一个包含我的消息的String,并使用String.getBytes()通过网络发送一个字节数组[]吗?

我关心的是编码:我确定每个字符会产生1个字节吗?如果C程序读取消息,我不会有问题吗?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

  

我的问题是:我可以直接从构造一个String对象吗?   byte []数组并使用正则表达式来检查消息是否正确   构造

是的你可以,String类有一个构造函数,它接受byte []然后应用适当的正则表达式来检查消息是否有效

  

其他问题是:我可以创建一个包含我的消息的String,并使用   String.getBytes()通过网络发送一个字节数组[]?

是的,您可以,如果您想知道如何通过网络发送文件字节look this