我想使用 python 将 csv 文件转换为 dbf(用于地理编码,这就是我需要 dbf 文件的原因)——我可以在 stat/transfer 或其他类似程序中轻松执行此操作,但我想这样做我的脚本的一部分,而不必去外部程序。似乎有很多关于将 DBF 转换为 CSV 的帮助问题/答案,但反过来我就没有运气了。
使用 dbfpy 的答案很好,我只是没有运气弄清楚如何去做。
作为我正在寻找的示例,这是我在网上找到的一些用于将 dbf 转换为 csv 的代码:
import csv,arcgisscripting
from dbfpy import dbf
gp = arcgisscripting.create()
try:
inFile = gp.GetParameterAsText(0) #Input
outFile = gp.GetParameterAsText(1)#Output
dbfFile = dbf.Dbf(open(inFile,'r'))
csvFile = csv.writer(open(outFile, 'wb'))
headers = range(len(dbfFile.fieldNames))
allRows = []
for row in dbfFile:
rows = []
for num in headers:
rows.append(row[num])
allRows.append(rows)
csvFile.writerow(dbfFile.fieldNames)
for row in allRows:
print row
csvFile.writerow(row)
except:
print gp.getmessage()
如果反过来得到类似的东西会很棒。
谢谢!
请您参考如下方法:
重复问题:Convert .csv file into .dbf using Python?
那里(除其他外)有希望的答案是 使用 csv library从 csv 文件中读取数据。第三方dbf library可以给你写一个dbf文件。
