如何判断String和byte []是否相等

时间:2013-04-24 14:13:41

标签: java client-server

我已经构建了一个UDP聊天客户端。要从客户端向服务器发送信息,我需要能够将客户端想要发送的字符串转换为byte []。我希望能够在服务器端删除客户端。当客户端向服务器发送特定消息时,服务器知道将其从服务器中删除。

但是,当我通过连接发送byte []时,将其转换为字符串并将其与将从连接终止客户端的字符串进行比较,它永远不会相同。我只是希望能够发送消息并能够告诉客户端希望服务器终止它的客户端IP广告端口的日志。

2 个答案:

答案 0 :(得分:0)

从字节数组转换为字符串并使用String.equals()方法。

byte[] b = {(byte) 99, (byte)97, (byte)116};
String s = new String(b, "US-ASCII");// pass encoding here its "US-ASCII".

答案 1 :(得分:0)

尝试这样的事情:

byte[] bytes = ...;
String myString = ...;
String byteString = new String(bytes, <charsetName>);

byteString.equals(myString);

您可以查看字符集名称here