急!请问这样的文本数据是如何导到VF的?

CheerYang 2004-09-22 12:34:23
请问有文本txt内空是这样的:

有以下A、B、C、D字段:

A B C D
张三|李四|2004.9.1|2200.33
张三|李四|2004.9.1|2200.33
张三|李四|2004.9.1|2200.33
张三|李四|2004.9.1|2200.33
张三|李四|2004.9.1|2200.33
张三|李四|2004.9.1|2200.33
张三|李四|2004.9.1|2200.33
张三|李四|2004.9.1|2200.33

类似这种数据文本如何导入成dbf?
下一回导入要想追加又该如何办?
请好心人给出代码或示例。
...全文
132 7 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
westbulls 2004-09-22
  • 打赏
  • 举报
回复
以上方法,已测试成功。
westbulls 2004-09-22
  • 打赏
  • 举报
回复
建一个表,
a char(10)
b char(10)
c date
d numeric(16,2)
然后用命令导入
APPEND FROM 你的txt DELIMITED WITH CHARACTER '|'
十豆三 2004-09-22
  • 打赏
  • 举报
回复
用append from
dfwxj 2004-09-22
  • 打赏
  • 举报
回复
westbulls(westbulls) 是对的
yestoyes 2004-09-22
  • 打赏
  • 举报
回复
从一个文件中读入记录,添加到当前表的尾部。
语法

APPEND FROM FileName | ?
[FIELDS FieldList]
[FOR lExpression]
[[TYPE] [DELIMITED [WITH Delimiter | WITH BLANK | WITH TAB]
| DIF | FW2 | MOD | PDOX | RPD | SDF | SYLK | WK1 | WK3 | WKS
| WR1 | WRK | XLS | XL5]]
[AS nCodePage]

参数

FileName

指定从哪个文件中读入记录。如果给出的文件名不包含扩展名,则将文件默认为 Visual FoxPro 表,扩展名为 .DBF。如果文件是 Visual FoxPro 表,无论 SET DELETED 为何种设置,表中标记为删除的记录也将添加到当前表中。

?

显示打开对话框,从中可以选择从哪个表中读入记录。

FIELDS FieldList

指定添加哪些字段数据。

FOR lExpression

为当前选定表中每一条 lExpression 为“真”(.T.) 的记录追加新记录,直至达到当前选定表的末尾。如果省略 FOR,则整个源文件记录都追加到当前表中。

TYPE

指定源文件类型。如果指定的源文件类型不是 Visual FoxPro 表,则必须指定文件类型,但不必包括 TYPE 关键字。您可以从各种类型文件(包括分隔 ASCII 文本文件)中读入信息添加到表中,在这些文件中可以指定字段分隔符。
如果要追加的源文件扩展名不是默认的扩展名,源文件名必须包括文件扩展名。例如,
Microsoft Excel 工作表通常具有 .XLS 扩展名。如果要追加的 Microsoft Excel 工作表扩展名不是 .XLS,一定要指定扩展名。

附注
如果要追加的记录来自工作表,工作表中的数据必须以主行序而非主列序存储,这样才能使追加的工作表数据符合表结构。

DELIMITED

指定源文件为分隔数据文件。分隔数据文件是 ASCII 文本文件,文件中每条记录以回车和换行符结尾。各字段内容默认地由逗号分开,字符字段值还需要用引号括上。例如:

"Smith", 9999999, "TELEPHONE"


所有分隔数据文件的扩展名默认为 .TXT 数据的格式。
如果日期格式正确,可以从分隔文件中导入日期数据,日期的默认格式为 mm/dd/yy。您还可以选择加入世纪信息。Visual FoxPro 导入的数据(如 12/25/95)不包含世纪信息,世纪信息的默认值为二十世纪。日期分隔符可以为任意非数值字符,但不能使用分隔文件中字段的分隔符。
如果其他一些日期格式与 SET DATE 中可以使用的格式相匹配,Visual FoxPro 也可以导入这些格式的日期数据。若要导入非默认格式的日期,应在使用 APPEND FROM 前先发出 SET DATE 修改数据格式设置。要想检查日期格式是否能成功地导入,可使用 CTOD( ) 函数。如果 CTOD( ) 函数接收此日期值,则日期数据就能正确地导入。

DELIMITED WITH Delimiter

指定字符字段由字符分隔,而非引号。

DELIMITED WITH BLANK

指定由空格符分隔字段,而不是用逗号分隔字段的文件。

DELIMITED WITH TAB

指定文件中各字段由 tab 键而非逗号来分隔。

DIF

选用 DIF 可从 VisiCalc .DIF(数据交换格式)文件中导入数据。矢量(列)对应当前选定表的字段,tuples(行)对应表的记录。DIF 文件的默认扩展名为 .DIF。

FW2

选用 FW2 可从由 Framework II 创建的文件中导入数据。FW2 文件的默认扩展名为 .FW2。

MOD

选用 MOD 可从Microsoft Multiplan 4.01 版本的文件中导入数据。MOD 文件由 Microsoft Multiplan 4.01 版本创建,默认扩展名为 .MOD。

PDOX

选用 PDOX 可从 Paradox 3.5 版或 4.0 版数据库文件中导入数据。Paradox 文件名的默认扩展名为 .DB。

RPD

选用 RPD 可从由 RapidFile 1.2 版本创建的文件中导入数据。RapidFile 文件名的默认扩展名为 .RPD。

SDF

选用 SDF 可从系统数据格式文件中导入数据。SDF 文件是一种 ASCII 文本文件,记录有固定长度,并且以回车和换行符结尾,各字段不分隔开。文件的默认扩展名为 .TXT。

SYLK

选用 SYLK 可从 SYLK(符号链接)交换格式文件中导入数据。SYLK 文件用于 Microsoft MultiPlan 中。SYLK 文件中的列对应 Visual FoxPro 表的字段,行对应表的记录。SYLK
文件没有扩展名。

WK1

选用 WK1 可从 Lotus 1-2-3 2.x 版本的电子表格中导入数据。电子表格的每列为表的一个字段,每行为表的一条记录。Lotus 1-2-3 版2.x 创建的电子表格扩展名为 WK1。

WK3

选用 WK3 可从 Lotus1-2-3 的电子表格中导入数据,电子表格的每列为表的一个字段,每行为表的一条记录。Lotus1-2-3 版本 3.X 创建的电子表格扩展名为 .WK3。

WKS

选用 WKS 可从 Lotus1-2-3 1-A 版的电子表格中导入数据。电子表格的每列为表的一个字段,每行为表的一条记录。Lotus1-2-3 1-A 版本创建的文件扩展名为 .WKS。

WR1

选用 WR1 可从 Lotus Symphony 1.1 或 1.2 版的电子表格中导入数据。电子表格的每列为表的一个字段,每行为表的一条记录。Symphony1.1 或 1.2 版创建的电子表格扩展名为 .WR1。

WRK

选用 WRK 可从 Lotus Symphony 1.0 版的电子表格中导入数据。电子表格中的每列为表的一个字段,每行为表的一条记录。Symphony 1.0 版创建的电子表格扩展名为 .WRK。

XLS

选用 XLS 可从 Microsoft Excel 工作表中导入数据。工作表的每列为表的一个字段,每行为表的一条记录。由 Microsoft Excel 创建的工作表扩展名为 .XLS。

XL5

选用 XL5 可从 Microsoft Excel 5.0 版中导入数据。工作表的每列为表的一个字段,每行为表的一条记录。工作表文件的扩展名为 .XLS。

AS nCodePage

指定源表或源文件的代码页。Visual FoxPro 将复制源表或源文件的内容,并在复制时自动把数据转换到当前表的代码页中。
如果指定的 nCodePage 值无法使用,Visual FoxPro 将产生一条错误信息。您可以用 GETCP( ) 函数显示代码页对话框,在对话框中可以为追加的表或文件指定代码页。
如果省略 AS nCodePage 子句,并且 Visual FoxPro 不能判定源表或文件的代码页,Visual FoxPro 将复制源表或文件内容,并在复制数据的过程中,自动将数据转换到当前的 Visual FoxPro 代码页中。如果 SET CPDIALOG 为 ON,当前选定工作区中的表以代码页标记。如果要从没有代码页标记的表中读入数据并添加到表中时,将显示代码页对话框,您可以在其中选择表的代码页。当前的 Visual FoxPro 代码页可以由 CPCURRENT( ) 函数设定。

如果省略 AS nCodePage 子句,并且 Visual FoxPro 可以确定追加记录的表或文件的代码页,Visual FoxPro 将复制表或文件的内容,并在复制数据的过程中,自动将数据转换到当前选定表的代码页中。
如果 nCodePage 为零,Visual FoxPro 认为需追加记录的表和文件的代码页与当前选定表的代码页相同,并且不进行代码页的转换。

说明
如果从其中追加数据的文件是 Visual FoxPro 表或在 FoxPro 早期版本中创建的表,其扩展名为 .DBF。如果其扩展名不是 .DBF,您必须指定扩展名。如果文件不是 Visual FoxPro
表或 FoxPro 早期版本创建的表,还必须指定文件的类型。
在从 DBASE IV 或 DBASE V 创建的包含备注字段的表中追加记录前,您必须先用 USE
命令在 Visual FoxPro 中打开此表,当提示信息询问您是否要转换文件时,请选择“是”。
如果从 FoxPro 早期版本的表或 Visual FoxPro 表中读入记录,此表可以在另一工作区打开。对于源表中有删除标记的记录,一但添加到表中,将会去掉删除标记。
十豆三 2004-09-22
  • 打赏
  • 举报
回复
set date ymd
CREATE TABLE 123.dbf (A C(10),B C(10),C D,D N(10,2)) &&建一个表,表名为123
APPEND FROM 你的txt DELIMITED WITH CHARACTER "|"
xclzteb 2004-09-22
  • 打赏
  • 举报
回复
对就是用楼上的办法,VFP的数据导入向导也可以。
相关推荐
发帖
VFP

2574

社区成员

VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
帖子事件
创建了帖子
2004-09-22 12:34
社区公告
暂无公告