【发布时间】:2011-09-13 20:39:52
【问题描述】:
为了转换一个字符串,我将它转换为一个字节,如下所示:
byte[] nameByteArray = cityName.getBytes();
要转换回来,我做了:String retrievedString = new String(nameByteArray);,这显然不起作用。我将如何将其转换回来?
【问题讨论】:
-
您需要在
new String()上指定字符集名称,例如new String(byte[], "utf-8");。使用与原始字符串相同的字符集。 -
这就是您应该将其转换回来的方式。例如ideone.com/TDb7E你能准确解释什么不起作用吗?
-
阅读the canonical essay,了解为什么在将字节转换为字符串时需要指定编码。