这是我的代码(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)中文件的外观:
浏览器可以很好地显示内容。
我错过了什么?
谢谢,
奥默。
最佳答案
windows文件系统使用utf16编码。不过,最好还是使用unicode值,因为python会自动为您的平台使用正确的编解码器和api来编码文件名:
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)