1

これが私のコードです(t.nameはヘブライ語の名前を保持しています):

# -*- coding: utf8 -*-  
                title = '%s.html' % t.name
                with file(title, 'wb') as fpo:
                    fpo.write('<meta charset="utf-8">\n')                    
                    message = 'שלום לך %s' % t.name
                    fpo.write('%s\n' % message)

ファイル システムでファイルがどのように見えるかを次に示します (Windows 7)。 ヘブライ語のファイル名

コンテンツはブラウザによって正常に表示されます。

ここで何が欠けていますか?

ありがとう、オマー。

4

2 に答える 2

2

Windows ファイルシステムは UTF16 エンコーディングを使用します。ただし、Python はプラットフォームに適したコーデックと API を自動的に使用してファイル名をエンコードするため、代わりにunicode値を使用することをお勧めします。

title = u'%s.html' % t.name.decode('utf8')  # decode from UTF8, use a unicode literal
with file(title, 'wb') as fpo:
    fpo.write('<meta charset="utf-8">\n')                    
    message = 'שלום לך %s' % t.name
    fpo.write('%s\n' % message)
于 2013-08-05T14:04:37.303 に答える
0

試してみてくださいtitle=u'%s.html' % t.name

于 2013-08-05T13:25:14.283 に答える