【问题标题】:Open a DBF file from a BytesIo从 BytesIo 打开一个 DBF 文件
【发布时间】:2018-09-20 19:54:16
【问题描述】:

我尝试从从 Internet 获取的 DBF 中删除字段。

它是压缩的,为了避免在应用我必须对其进行的修改之前在磁盘上写入任何数据,我将它提取到一个 BytesIo 对象中。

然后,首先:dbf 库是否像 BytesIo 一样处理内存文件? 第二:我不需要的字段删除方法有效吗?

这是我最终得到的结果:

def removeFields(name, raw):
    import dbf

    data = io.BytesIO(raw)
    print "Editing "+name
    table = dbf.Table(data, on_disk=False)
    table.open()
    table.delete_fields(rmv_dict[name])
    table.close()
    return (data.getvalue())

【问题讨论】:

    标签: python dbf


    【解决方案1】:

    很遗憾,dbf 库不处理任何内存文件(由她的作者确认)。 有些像 dbfread 处理它们,但没有提供任何方法来简单地在他们的文档中删除字段。

    幸运的是,我找到了一个使用易于处理的变量读取/写入 dbf 文件的方法:http://code.activestate.com/recipes/362715-dbf-reader-and-writer/

    【讨论】:

      猜你喜欢
      • 2011-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-08
      • 2013-01-23
      • 1970-01-01
      相关资源
      最近更新 更多