Python 不使用MS excel将dbf转换为csv
在不使用Python 不使用MS excel将dbf转换为csv,python,csv,io,python-2.6,dbf,Python,Csv,Io,Python 2.6,Dbf,在不使用win32com.client或其他依赖于microsoft软件的软件包的情况下,将.dbf文件转换为.csv文件的最佳方式(最低计算成本)是什么?您可以使用。该软件包支持将表格直接写入CSV,或者,若需要更多控制,您也可以使用CSV标准库模块编写自己的表格 作为纯Python,它可能不是可用的最快的解决方案,但它应该是可移植的。最近,我一直在使用以下代码进行快速、脏的csv到dbf转换,主要用于准备csv文件以导入ArcGIS文件地理数据库。该代码使用 导入dbf,操作系统 def c
win32com.client
或其他依赖于microsoft软件的软件包的情况下,将.dbf文件转换为.csv文件的最佳方式(最低计算成本)是什么?您可以使用。该软件包支持将表格直接写入CSV,或者,若需要更多控制,您也可以使用CSV
标准库模块编写自己的表格
作为纯Python,它可能不是可用的最快的解决方案,但它应该是可移植的。最近,我一直在使用以下代码进行快速、脏的csv到dbf转换,主要用于准备csv文件以导入ArcGIS文件地理数据库。该代码使用
导入dbf,操作系统
def csv_至_dbf(增量SV、输出dbf):
outFile=open(),'w')
以开(inCSV,'r')作为f:
计数=0
对于f中的行:
如果计数=0:header=line.rstrip(“\n”).split(“,”)
其他:输出文件。写入(行)
计数+=1
dbf.from_csv(csvfile=,field_names=header,filename=outDBF,to_disk=True)
os.remove()
import dbf, os
def csv_to_dbf(inCSV,outDBF):
outFile = open(<temporary CSV>),'w')
with open(inCSV,'r') as f:
count = 0
for line in f:
if count == 0: header = line.rstrip("\n").split(",")
else: outFile.write(line)
count +=1
dbf.from_csv(csvfile=<temporary CSV>, field_names=header, filename= outDBF ,to_disk=True)
os.remove(<temporary CSV>)