我尝试使用以下代码输出包含字母“ü”的德语句子的转义形式(ascii 252,八进制374,十六进制0xfc):
pp "Test \374"
pp "Test \374".encode("UTF-8")
但是使用ruby 1.8.7,我得到的结果是: "Test \374" "Test \374"
使用ruby 1.9.2输出结果为: "Test \xFC" "Test \xFC"
如何让ruby(1.8.7 + 1.9.x)输出"Test ü"? :)
我尝试使用以下代码输出包含字母“ü”的德语句子的转义形式(ascii 252,八进制374,十六进制0xfc):
pp "Test \374"
pp "Test \374".encode("UTF-8")
但是使用ruby 1.8.7,我得到的结果是: "Test \374" "Test \374"
使用ruby 1.9.2输出结果为: "Test \xFC" "Test \xFC"
如何让ruby(1.8.7 + 1.9.x)输出"Test ü"? :)
>> pp "Test \xc3\xbc"
"Test ü"
=> nil
>> s="Test \374" # This has utf-8 encoding but we need it to be "ISO-8859-1"
=> "Test \xFC"
>> s.force_encoding("ISO-8859-1")
=> "Test "
>> s.encode("UTF-8")
=> "Test ü"
>>