Pythonで日本語

| トラックバック(0)

今日仕事で、ログファイルを喰って、sqliteに格納するプログラムを作りました。
ログファイルはshift-jisで保存されています。
sqliteに格納するときどうもうまくいかない。そろそろちゃんと文字コードについて勉強しないと。。

そんなわけで、第一弾。

  • INPUT:shift-jis
  • PROCESS:utf-8
  • OUTPUT:utf-8
# C:\Python26\python.exe 
# coding:utf-8

import traceback

def read_shiftjisfile():
    f = open('input_file.txt')  #shift-jisで保存
    fstream = f.read()
    f.close()
    return fstream

def display_shiftjis():
    fstream = read_shiftjisfile()  
    print fstream   #これは化ける
    print fstream.decode("shift-jis")   #これは表示できる

def manipulate_string():
    fstream = read_shiftjisfile()

    mstream = u"これはutf-8です。"
    print mstream
    
    try:
        print mstream + fstream  #これはこける
    except:
        print "*** Error : utf8+shiftjisでこけた ***",
        print traceback.print_exc()  

    print mstream + fstream.decode("shift-jis")  #これはこけない

if __name__ == '__main__':
    read_shiftjisfile()
    manipulate_string()

トラックバック(0)

トラックバックURL: http://www.flotsam-fareast.com/mt425/mt-tb.cgi/11

このブログ記事について

このページは、flotsamが2009年5月 8日 01:03に書いたブログ記事です。

ひとつ前のブログ記事は「Windows7 RC:入れてみた」です。

次のブログ記事は「Excel VBAでファイル操作:実行ファイルからコピー作成」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.27-ja