4

現在、私は PayPal チェックアウトで Rails アプリケーションに取り組んでいます。PayPal は IPN メッセージを使用してアプリと通信します。

多くの場合、すべて問題なく動作しますが、誰かがドイツ語のウムラウト ( öüäß)などの特殊な文字を使用\xf6すると、文字列に入ります。

これを人間が読める char に変換するにはどうすればよい'ö'ですか?

4

2 に答える 2

9

問題は、データが Windows-1252 としてエンコードされていることですが、Ruby はそれを自動的に検出しません。次のようにだますことができます:

my_string = "Sch\xF6ning"
my_string.force_encoding('windows-1252').encode('utf-8')
=> "Schöning"

同じことを行うのに役立つ再利用可能なコンバーターを作成できます。

ec = Encoding::Converter('windows-1252', 'utf-8')
ec.convert(my_string)
=> "Schöning"
于 2013-03-06T17:37:01.900 に答える
0

そのためのペイパル側のセットアップがあることに注意してください。

販売者のペイパル アカウントで、[プロファイル] > [マイ販売ツール] > [PayPal ボタンの言語エンコード] > [その他のオプション] に移動します。

于 2014-10-23T09:02:21.443 に答える