R/先生;如何阅读整个文本文件并在 .dbf 中获取输出文件?(将文本文件导入 FoxPro .dbf 文件。)我是 foxpro pl 的新手。详细阐述。
4 回答
有很多方法可以做到这一点,请您提供更多您正在尝试的示例。它是逗号分隔值列表、固定列长度文本、XLS(较旧的 Excel 文件格式)还是 XML?
您可以像我喜欢的那样创建一个临时游标(或永久表),并在临时游标中进行任何数据清理,然后在一切顺利后追加到最终表。然后,做一个追加,比如
create cursor C_MyTempInputDBF ;
( SomeColumn c(20),;
AnotherColumn c(15),;
etcField c(10) )
append from YourTextFile.txt TYPE SDF
(或输入 XLS、CSV、DELIMITED WITH TAB 等...查看“APPEND FROM”命令的帮助)。
如果您正在处理一个 XML 文件,您可以进行一些类似的导入,只要它只有一层深度的记录,而不是复杂的每个记录有多个条目。该过程将与 XMLTOCURSOR() 函数一起使用。
更多细节和示例文件内容也会有所帮助。
** 创建一个名为lines.dbf 的免费表,其中包含一个名为line 的80 个字符的字段。
在此示例中,文本文件来自 Space Track ( https://www.space-track.org/ ),包含 3 行元素。此代码段将文本行作为单独的记录引入。
每个卫星是 3 行,在本例中成为 3 条记录。截至撰写本文时,目录中有 46,392 行(记录),代表 15,464 项。
使用线条
删除所有
盒
appe from 3le.txt fields line deli
** 然后可以根据https://www.mmto.org/obscats/tle.html使用 SUBSTR 函数将它们切片,并放置在最终目标表的适当字段中。
如果您正在处理一个简单的文本文件,有一个更简单的解决方案:
filetostr("c:file_to_import.txt")
或者您可以使用导入向导。
在 Visual Fox Pro 主窗口中,转到:工具 -> 向导 -> 导入。
从那时起,这很简单。