Java代码将UTF-8编码字段更正为8位ASCII

时间:2018-03-24 02:23:51

标签: java utf-8 ascii 8-bit

我有一些我正在用JAVA处理的数据。从数据的外观来看,似乎8位ASCII名称是使用UTF-8编码的,但存储在ASCII中。

数据字段中的值:“JoséFlores”
应该储存什么:“JoséFlores”

为了证实我的怀疑,我运行了这段代码:

byte[] utf8Bytes = c_TOBETRANSLATED.getBytes("UTF-8");
String s2 = new String(utf8Bytes);

TOBETRANSLATED =“JoséFlores”时,它返回“JoséFlores”。所以看起来我的数据字段是UTF-8编码的。因此,为了尝试将数据转换回ASCII,我尝试了这段代码:

byte[] utf8Bytes = c_TOBETRANSLATED.getBytes("ASCII");
String s2 = new String(utf8Bytes);

TOBETRANSLATED =“JoséFlores”时,它会返回“José©Flores”。

我做错了什么? 我需要TOBETRANSLATED =“JoséFlores”返回“JoséFlores”。

1 个答案:

答案 0 :(得分:0)

试试这个:

byte[] utf8Bytes = c_TOBETRANSLATED.getBytes("ISO-8859-1"); String s2 = new String(utf8Bytes, "UTF-8");