1
私は、Pythonスクリプトでさまざまなエンコーディングを処理しようとしています。ユーザーフレンドリーで自動マジックの方法が可能です(utf8のAPIがあります)。これは、クロスプラットフォームのコンソールスクリプトです。sys.stdout.encodingがNoneの場合はどうすればよいですか?
stdout
に印刷する場合は、sys.stdout.encoding
を使用しており、コンソールに印刷する際にほぼ常に正しいことをしているようです。ただし、stdoutがの場合の場合はNone
になります。
ので、その場合には、私は、ファイルへの配管午前と仮定してlocale.getpreferredencoding()
を使用しますが、:
- 私はこれをファイルに印刷するための右のエンコーディングであるかわからないが、それは非常にクロスプラットフォームで動作します。
- プログラムへのパイプ
|
の場合は、動作しません。そのような場合にはの標準または予期された動作であるが存在しない場合、どのように検出されるかわかりません。