如何在android中将字符串更改为UTF-8格式?例如,当我从服务器获取文本字符串时,我想将文本格式更改为UTF-8。我怎样才能做到这一点?如何在android中将字符串更改为UTF-8格式
String getText = text; // this text variable has a value from the server and now I want change it to UTF-8 format.
如何在android中将字符串更改为UTF-8格式?例如,当我从服务器获取文本字符串时,我想将文本格式更改为UTF-8。我怎样才能做到这一点?如何在android中将字符串更改为UTF-8格式
String getText = text; // this text variable has a value from the server and now I want change it to UTF-8 format.
嗨,您可以使用String构造与charset参数:
try
{
final String s = new String("AnyStringThatYouwant to convert", "UTF-8");
}
catch (UnsupportedEncodingException e)
{
Log.e("utf8", "conversion", e);
}
String
对象内部持有UTF-16的数据。如果你想要的是编码String
为UTF-8导出,你需要将其转换为UTF-8编码byte[]
阵列,如与String.getBytes(Charset charset)
或String.getBytes(String charsetName)
方法,如:
byte[] byteArray = text.getBytes(StandardCharsets.UTF_8);
byte[] byteArray = text.getBytes("UTF-8");
没有这样的String构造函数。接受字符集作为输入的所有构造函数都需要一个'byte []'数组作为输入。一个String只包含UTF-16数据,所以构造函数解释指定字符集中的byte []数据,所以它可以被解码为UTF-16。这不是OP要求的。 –