在C#3.5中生成dBase II DBF文件

我正在生成dbf文件以导入到只接受dBase II OR III的旧系统。 我的答案是.Net 3.5。 我最初开始使用这个组件VFPOLEDB.1,但它只生成dBase V格式的dbf文件,这不是向后兼容的。

任何人都知道在dBase II或III中生成de dbf文件的组件或驱动程序

谢谢

尝试发出调用以执行打开文件的脚本,然后执行

复制到{some file}键入FOX2X

应该得到你的输出……

还有一篇类似的文章通过C#通过VFPOleDB完成,我将尝试找到它… Yup,并且归功于@DaveB这里是他在C#代码中创建.DBF的post的片段, 可读来自Excel(VFP与否)

string connectionString = @"Provider=VFPOLEDB.1;Data Source=C:\YourDirectory\"; using (OleDbConnection connection = new OleDbConnection(connectionString)) { using (OleDbCommand scriptCommand = connection.CreateCommand()) { connection.Open(); string vfpScript = @"USE TestDBF COPY TO OldDBaseFormatFile TYPE Fox2x USE"; scriptCommand.CommandType = CommandType.StoredProcedure; scriptCommand.CommandText = "ExecScript"; scriptCommand.Parameters.Add("myScript", OleDbType.Char).Value = vfpScript; scriptCommand.ExecuteNonQuery(); } } 

原帖是为了能够以Excel格式打开文件的人。

我记得几年前尝试做这件事而失败了。 我的解决方案是采用现有的dBase II文件,清空所有数据,并将该空文件保留为模板,以便在需要创建新数据库时使用。

ESRI的Shapefile格式使用dBase III存储属性数据。 在SharpMap项目中有一个不错的实现,你应该可以独立使用(小心许可证,但它是LGPL)。

http://code.google.com/p/sharpmapv2/source/browse/trunk/SharpMap.Data.Providers/ShapeFileProvider/DbaseFile.cs