如标题所示,如何在 Java 中将 ASCII 字符串转换为 UTF-8 字符串?
谢谢!
编辑:我的情况真的是我读的是中文字符串,当我输出它时,都是乱码。我认为问题可能出在编码上。那么,如何正确地将字符串从乱码转换为正确的语言集字符?
Java 中没有“ASCII 字符串”或“UTF-8 字符串”之类的东西。当你得到一个String
对象时,它只是一个 UTF-16 代码单元的序列。没有关于它最初是使用 ASCII 还是 UTF-8 从字节数组中解码来解释字节的记录。
另请注意,UTF-8 与 ASCII 向后兼容,因为如果您有任何表示 ASCII 编码文本的有效字节序列,那将是用于表示 UTF-8 中相同文本的相同字节序列.
Java 中没有 ASCII 字符串或 UTF-8 字符串之类的东西。ASCII 和 UTF-8 是编码 - 字节数组。
您无需进行任何转换即可从字符串的 ASCII 编码转换为字符串的 UTF-8 编码。任何有效的 ASCII 也是相同字符串的有效 UTF-8 编码。(反之则不然)。