包含中文字符到ASCII的字符串

时间:2014-08-06 12:10:20

标签: java eclipse encoding ascii

这是我的代码,两种方式都提供相同的输出。

String description = "test string with 音樂";
byte[] b = description.getBytes("US-ASCII");

//first way
char[] result = new char[b.length];       
for ( int i = 0; i < b.length; i++ ) {
    result[i] = (char)b[i];
}
System.out.println(new String(result)); //output - test string with ??

//second way
System.out.println(new String(b, "UTF-8")); //output - test string with ??

我在运行配置

下使用 Eclipse 并将控制台输出编码更改为 US-ASCII

是否可以将其作为US-ASCII编码字符串?

非常感谢!!!

2 个答案:

答案 0 :(得分:3)

无法将其转换为US-ASCII,但

如果您只想要Unicode转义字符串,那么您可以使用apache common lang实用程序

array(0 => array('sitter_id'=>44,...))

答案 1 :(得分:2)

无法将中文字符转换为US-ASCII,因为它们不包含在此字符集中。

US-ASCII只知道128个不同的字符,其中一些甚至是非打印控制字符。