首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能写入dbf文件

不能写入dbf文件
EN

Stack Overflow用户
提问于 2018-03-16 06:12:55
回答 2查看 2.2K关注 0票数 3

在python3中使用dbf创建dbf文件。

我试过了-

代码语言:javascript
复制
import dbf
Tbl = dbf.Table( 'sample.dbf', 'ID N(6,0); FCODE C(10)') 
Tbl.open('read-write') 
Tbl.append() 
with Tbl.last_record as rec: 
     rec.ID = 5 
     rec.FCODE = 'GA24850000' 

并有下一个错误:

代码语言:javascript
复制
Traceback (most recent call last):
  File "c:\Users\operator\Desktop\2.py", line 3, in <module>
    Tbl.open('read-write') 
  File "C:\Users\operator\AppData\Local\Programs\Python\Python36-32\lib\site-packages\dbf\__init__.py", line 5778, in open
    raise DbfError("mode for open must be 'read-write' or 'read-only', not %r" % mode)
dbf.DbfError: mode for open must be 'read-write' or 'read-only', not 'read-write'

如果我删除“读-写”-下一步:

代码语言:javascript
复制
Traceback (most recent call last):
  File "c:\Users\operator\Desktop\2.py", line 4, in <module>
    Tbl.append() 
  File "C:\Users\operator\AppData\Local\Programs\Python\Python36-32\lib\site-packages\dbf\__init__.py", line 5492, in append
    raise DbfError('%s not in read/write mode, unable to append records' % meta.filename)
dbf.DbfError: sample.dbf not in read/write mode, unable to append records

我做错了吗?如果不尝试追加,则只需获得具有正确列的.dbf,因此dbf库可以工作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-17 18:04:29

我也犯了同样的错误。在dbf模块的旧版本中,我能够通过仅用Tbl.open()打开dbf文件来编写dbf文件。

但是,对于新版本(dbf.0.97),为了能够编写这些文件,我必须用Tbl.open(mode=dbf.READ_WRITE)打开它们。

票数 3
EN

Stack Overflow用户

发布于 2019-04-15 11:39:26

下面是一个附加的示例:

代码语言:javascript
复制
table = dbf.Table('sample.dbf', 'cod N(1,0); name C(30)')
table.open(mode=dbf.READ_WRITE)
row_tuple = (1, 'Name')
table.append(row_tuple)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49314270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档