[英]Convert .csv file into .dbf using Python?
使用dbf包,您可以获得一个基本的csv文件,其代码类似于:
import dbf
some_table = dbf.from_csv(csvfile='/path/to/file.csv', to_disk=True)
这将创建具有相同名称和字符或备注字段以及字段名称f0,f1,f2等的表。
对于不同的文件名,请使用filename
参数,如果您知道字段名称,也可以使用field_names
参数。
some_table = dbf.from_csv(csvfile='data.csv', filename='mytable',
field_names='name age birth'.split())
披露:我是这个包的作者。
您不会在网上找到任何读取CSV文件并写入DBF文件的内容,以便您可以调用它并提供2个文件路径。 对于每个DBF字段,您需要指定类型,大小和(如果相关)小数位数。
一些问题:
什么软件会消耗输出DBF文件?
没有“这种”(唯一的)DBF文件格式。 你需要dBase III吗? dBase 4? 7? Visual FoxPro? 等等?
您需要编写的文本字段的最大长度是多少? 你有非ASCII文本吗?
哪个版本的Python?
如果您的要求很少(dBase III格式,没有非ASCII文本,文本<= 254字节长,Python 2.X),那么您引用的食谱配方应该可以胜任。
我在这里创建了一个python脚本。 它应该可以自定义任何csv布局。 在此之前,您需要知道您的DBF数据结构。 此脚本需要两个csv文件,一个用于DBF标头设置,另一个用于正文数据。 祝好运。
据我所知,没有一个是精心打磨的。 多年来,我不得不多次使用xBase文件,并且在必须这样做的时候,我一直在发现自己编写代码。 在我的一个备份中,我有一个非常实用的纯Python库,但我不确切知道它在哪里。
幸运的是,xBase文件格式并不复杂。 当然,您可以在Internet上找到该规范。 一目了然,您链接的模块看起来很好,但当然会在使用之前复制您正在使用的任何数据。
一个坚实的,读/写,功能齐全的xBase库,包含所有的铃声和口哨声,这已经在我的TODO列表上已经有一段时间......我甚至可以在今年剩下的内容中找到它,如果我很幸运的话......(可能不是,但遗憾的是)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.