それは£ '文字が含まれているように私には、以下の「a.desc」に格納されている文字列のPython:Unicode文字列を受け入れるStringIO.writelinesを取得するには?
UnicodeEncodeError: 'ascii' codec can't encode character u'\xa3' in position 34: ordinal not in range(128)
を取得しています。これは基本的なGoogle App Engineのデータストアにユニコード文字列として格納されているので問題ありません。 cStringIO.StringIO.writelines機能は一見のASCII形式でエンコードしようと試みている:
result.writelines(['blahblah',a.desc,'blahblahblah'])
私はそれが正しい言い回しだ場合、それはUnicodeとしてエンコードを扱うように指示するにはどうすればよいですか?
アプリエンジンは、Python 2.5
私は(cStringIOはパフォーマンスに優れていることを意味します)スイッチを入れましたが、エラーは発生しませんでしたが、 '£'の代わりに '£'が表示されました。 なぜ「Â」が表示されますか? – rutherford
'£'は、u'£ 'のUTF-8エンコーディングである0xc2 0xa3のWindows-1252デコードです。あなたの端末、アプリ、またはあなたが見ているところは、UTF-8の代わりにWindows-1252用に設定されているかもしれません。 – Phil
hmm。基本的には、私はChromeブラウザを通じてWebサーバーの応答を見ています。それが問題だろうか? – rutherford