首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将dbf文件追加到一个dbf文件

将dbf文件追加到一个dbf文件
EN

Stack Overflow用户
提问于 2019-03-20 15:50:21
回答 2查看 595关注 0票数 1

我在一个目录中有很多文件,比如['FredrikstadAvst1.dbf', 'FredrikstadAvst2.dbf', ...]。我想编写一个Python脚本,将这些文件连接成一个新的"*.dbf"文件。

我有一个Python脚本,几乎可以完成这项工作。但在输出文件中,它总是被覆盖。因此,当作业完成时,输出文件只包含我的目录中的最后一个文件。

下面是我的脚本:

代码语言:javascript
复制
import os, glob, shutil

folder_path = r'C:\Tom\Oppdrag_2019\Pendle\2018'
for filename in glob.glob(os.path.join(folder_path, '*.dbf')):

    fd = open(filename, 'r')

    List = []
    List.append(fd)

    print filename
wfd = open(r"C:\Tom\Oppdrag_2019\Pendle\FredrikstadAvst.dbf",'a')
shutil.copyfileobj(fd, wfd, 1024*1024*10)
EN

回答 2

Stack Overflow用户

发布于 2019-03-20 16:54:41

请考虑以下几点:

代码语言:javascript
复制
import os, glob, shutil

folder_path = r'C:\Tom\Oppdrag_2019\Pendle\2018'
wfd = open(r"C:\Tom\Oppdrag_2019\Pendle\FredrikstadAvst.dbf",'w')
for filename in glob.glob(os.path.join(folder_path, '*.dbf')):
    fd = open(filename, 'r')
    shutil.copyfileobj(fd, wfd, 1024*1024*10)
    fd.close()
wfd.close()

通过在循环之前打开文件并仅在迭代每个dbf文件之后才关闭,它应该不会被覆盖。我删除了List (这是一个保留关键字,所以尽量不要使用它),因为我看不到它在这里的用途。

票数 0
EN

Stack Overflow用户

发布于 2019-03-22 15:55:59

现在差不多可以工作了。但是头文件写的是每个文件。我只想让头在第一次写出来。如何每次跳过头部?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55255829

复制
相关文章

相似问题

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