たとえば、16 進数の文字列を utf-8 に変換し"\\XB6\\XAB..."
たい"中国"
。"\x68\x65\x6c\x6c\x6f".unpack("Z*")
→を使っています"hello"
が、うまくいきません。
質問する
2744 次
2 に答える
2
Ruby 1.9 を使用している場合は、次を使用しますString#force_encoding
。
"\xe4\xb8\xad\xe5\x9b\xbd".force_encoding("UTF-8")
于 2012-09-15T17:40:52.220 に答える
1
文字列の定義には必ず二重引用符を使用してください。そうしないと、期待した結果が得られません。
二重引用符を使用した例:
"\xe4\xb8\xad\xe5\x9b\xbd".force_encoding("UTF-8") => "中国"
一重引用符を使用した例:
'\xe4\xb8\xad\xe5\x9b\xbd'.force_encoding("UTF-8") => "\\xe4\\xb8\\xad\\xe5\\x9b\\xbd"
于 2014-10-21T19:31:22.530 に答える