我有一个问题困住了我几天,尝试了几种方法仍然无法弄明白。
是关于使用utf-8
中的csv文件上传数据这里是main.Py
class hello(db.Model):
greeting = db.StringListProperty() (or Listproperty(unicode))
class dbLoader(bulkloader.Loader):
def __init__(self):
bulkloader.Loader.__init__(self,'hello',
[
('greeting', lambda x: x.decode('utf-8').split('|'))
])
loaders = [dbLoader]
data.cv包含:
“你好|您好|こんにちは|¡HOLA |مرحبا|안녕하세요”
存储实体就像 [u'Hello',u'\ u60a8 \ u597d',u'\ u3053 \ u3093 \ u306b \ u3061 \ u306f',u'\ xa1Hola',u'\ u0645 \ u0631 \ u062d \ u0628 \ u0627',u' \ uc548 \ ub155 \ ud558 \ uc138 \ uc694' ] 字符不正确。
对我来说更进一步......赞赏!
答案 0 :(得分:0)
您的数据正在正确导入。存储的实体只是以Python的repr
格式显示,它表示在前127个字符之外的字符的unicode字符串作为unicode代码点。在第二个字段中,我们在命令行上使用常规Python获得相同的结果:
$ echo 您好 | python -c "import sys; print repr(sys.stdin.read().decode('utf8'))"
u'\u60a8\u597d\n'