Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby解码字符串_Ruby_String_Utf 8 - Fatal编程技术网

Ruby解码字符串

Ruby解码字符串,ruby,string,utf-8,Ruby,String,Utf 8,在Ruby中,我如何获得: “b\x81rger”通过提供字符串“bürger” 我需要在Zebra打印机上打印特殊字符,我可以看到“b\x81rger”打印“bürger”,但发送“bürger”无法打印正确的字符。结果是CP850 合适的解决方案(Ruby 2.5+) 规范化unicode字符串,然后将其编码为CP850: "bürger".unicode_normalize(:nfc).encode(Encoding::CP850) #⇒ "b\x81rger" 适用于特殊字符和组合变音

在Ruby中,我如何获得:

“b\x81rger”
通过提供字符串
“bürger”


我需要在Zebra打印机上打印特殊字符,我可以看到
“b\x81rger”
打印
“bürger”
,但发送
“bürger”
无法打印正确的字符。

结果是
CP850

合适的解决方案(Ruby 2.5+)

规范化unicode字符串,然后将其编码为
CP850

"bürger".unicode_normalize(:nfc).encode(Encoding::CP850)
#⇒ "b\x81rger"
适用于特殊字符和组合变音符号

后备解决方案(Ruby 2.5-)

编码并祈祷这是一个平静的乌姆劳特:

"bürger".encode(Encoding::CP850)
#⇒ "b\x81rger"

你只对德语字符有问题?您需要一种方法将“bürger”翻译成“b\x81rger”和其他具有特殊字符的单词?一般来说,我会遇到特殊字符的问题,如å、ä、ä、ä、ä等。Ä=\\x8e、ä=\\x84、Ö=\\x99、ö=\\x94、Ü=\\x9a、ü=\\x81、ß=\\xe1这是德语字符的表格,很遗憾,我找不到您的打印机正在使用的表的其余部分。我希望在编码/解码方面有更多知识的其他人能够提供帮助。祝你好运谢谢你,维克多。是的,如果我找不到一些有用的方法,我想我可以自己做替换。虽然我希望有一个通用的方法。太棒了!这就解决了打印机的问题。谢谢