为了转换字符串,我将其转换为一个字节,如下所示:
byte[] nameByteArray = cityName.getBytes();
为了转换回来,我做了:String retrievedString = new String(nameByteArray);这显然不起作用.我怎么把它转换回去?
anu*_*ava 10
您原来的城市名称中有哪些字符?试试这样的UTF-8版本:
byte[] nameByteArray = cityName.getBytes("UTF-8");
String retrievedString = new String(nameByteArray, "UTF-8");
Run Code Online (Sandbox Code Playgroud)
这显然不起作用.
实际上,这正是你如何做到的.唯一可能出错的是您隐式使用平台默认编码,这可能因系统而异,并且可能无法表示字符串中的所有字符.
解决方案是明确使用可以表示所有特征的编码,例如UTF-8:
byte[] nameByteArray = cityName.getBytes("UTF-8");
String retrievedString = new String(nameByteArray, "UTF-8");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7622 次 |
| 最近记录: |