我稍微试了一下
如果在第一行或第二行加入 # -*- coding: utf-8 -*- 的话
可以读取中文档名的档案,不会出错
然后,也可以成功地加入 field 不会将 dbf 档清空
但是如果已有同样的 field,再执行一次 add_fields 函数,则会将 dbf 档清空
※ 引述《Vinn (Vinn)》之铭言:
: 以下为code:
: import dbf
: import sys
: reload(sys)
: sys.setdefaultencoding('utf8')
: db = dbf.Table('乡镇.dbf')
: db.open()
: db.add_fields("value N(4,0)")
: db.close()
: 很奇妙的是,在第一次执行这段code新增field时
: 会喷出错误UnicodeDecodeError
: 但是虽然是错误,但是他仍然有新增field,只是他把全部的record都删掉了..
: 要再次新增field的话,就一切顺利成功,不会报错
: 想请问这样的情况该怎么解决呢? 先谢谢板上的朋友了!!