【发布时间】:2018-03-24 02:23:50
【问题描述】:
我正在使用 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"。
【问题讨论】: