如何将文本文件里用分隔符分开的数据写入数据库?(100分)

  • 主题发起人 主题发起人 gojohnnywong
  • 开始时间 开始时间
G

gojohnnywong

Unregistered / Unconfirmed
GUEST, unregistred user!
文本文件里的数据纪录用"|"分隔开,如下所示:

440625|09225222|02|542200|03|0223|
1|小明|小强|小东|
2|小丽|小晓|小小|
3|小春|小成|小何|

文本文件中的每一行用回车键结束,其中第一行是汇总纪录,第二行开始是明细数据。现在想将第一行汇总纪录用“|”分隔符分隔的纪录提取出来,并将纪录写入到memo1控件中;然后将第二行开始的用“|”分隔符分隔的明细数据提取出来,并导入到数据库中,请问应该怎么做?
 
To 楼主:
1、您前几句话说得还算清楚,后几句基本不知所谓...
2、要导入数据库,数据库结构是什么样的?是分别插入不同字段还是插入到同一字段?
3、您问我我问谁?!
 
楼主:你的问题实际是什么呢,从你的描述看你已经很清楚要怎么做了.
如果是问文本文件读写的方法:
Var
F: TextFile;
AssignFile(F,FileName)
Reset(F);
while not eof(f) do
begin
Readln(F, S);
end
CloseFile(F);
 
Var
FSrc,FDest: TextFile;
begin
AssignFile(FSrc,FileName);
AssignFile(FDest,FileName)
Reset(FSrc);
ReWrite(FDest);
while not eof(FSrc) do
begin
Readln(FSrc, S);
S := StringReplace(S,'|',#13,[rfReplaceAll]); //分隔符替换为制表符
Writeln(Fdest,S);

end
CloseFile(FSrc);
CloseFile(FDest);
end;
 
BULK INSERT dbo.TABLE1
FROM 'd:/1.txt' --文件名
WITH (
FIELDTERMINATOR = '|', --'|'为分隔符
ROWTERMINATOR = '/n'
)
 
后退
顶部