標準出力をファイルにリダイレクトする際に
ファイルの文字エンコードを Shift_JIS に設定するのに今までは以下の様に行っていた。
$ python script | nkf > output_file
しかし、これだと自分は良いのだが余りCUIに慣れていない人に
余計な操作をさせることになるので何とか変えたいなぁ・・・と思っていたら
以下の方法を見つけた
- 参考
- http://osksn2.hep.sci.osaka-u.ac.jp/~taku/osx/python/encoding.html
import sys, codecs
sys.stdin = codecs.getreader( 'euc_jp' )( sys.stdin );
sys.stdout = codecs.getwriter( 'shift_jis' )( sys.stdout );
文字コードについては Python Library Reference の Codecs の項を参照とのこと。