delphi读取文本文件
文本中有好多条记录,每一行的记录例如:|F280400BFEBFBF201006101726fMXV||ZC|201006|S001\20100610172628200\...
文本中有好多条记录,每一行的记录例如:|F280400BFEBFBF201006101726fMXV||ZC|201006|S001\20100610172628200\GTDJA000000122|20100610172628200|SM||0|1|S001|2010-6-10 17:27:11|2010-6-10 17:27:11|GTDJA000000122|3|||01||1111|1_1|林彬|Linbin|于刚-210225197809099412|slycs|1-7大厅受理员||1
现在的要求就是提取这些数据(其中的“|”为分隔符,不需要的)并将这些数据后导入相应的数据库表中,可以新建一张表,字段名为固定的,与txt文本中的数据要一一对应。
就是想知道怎么去分解每个数据的,怎么去掉“|”,把其他的数据提出来 展开
现在的要求就是提取这些数据(其中的“|”为分隔符,不需要的)并将这些数据后导入相应的数据库表中,可以新建一张表,字段名为固定的,与txt文本中的数据要一一对应。
就是想知道怎么去分解每个数据的,怎么去掉“|”,把其他的数据提出来 展开
展开全部
首先你要有一个stringlist类型的对象,假设是slist
你的字符串假设为s
用这个方法可以取得你要的字符ExtractStrings(['|'],[],PChar(s),slist);
这样你就可以循环slist一一取得你要的字段了
for i:=0 to slist.Count-1 do
begin
ado.FIeld[i].asstring:=slist.Strings[i];
end;
如果楼主还有不理解的地方可以Hi,希望对你有帮助
你的字符串假设为s
用这个方法可以取得你要的字符ExtractStrings(['|'],[],PChar(s),slist);
这样你就可以循环slist一一取得你要的字段了
for i:=0 to slist.Count-1 do
begin
ado.FIeld[i].asstring:=slist.Strings[i];
end;
如果楼主还有不理解的地方可以Hi,希望对你有帮助
展开全部
1打开文件
2读一行
3分解这行的内容到各个变量中
4写数据库
你哪步不会弄?别告诉我1、2、3、4
2读一行
3分解这行的内容到各个变量中
4写数据库
你哪步不会弄?别告诉我1、2、3、4
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
{因为你这里是用'|'这个符号作为分隔符,,我估计你这个表应该是有29列...
给你一个最简单的方法导入到数据库中...记得加分...}
with adoquery1 do
begin
close;
sql.Clear;
sql.Add('bulk insert cde from ''C:\Documents and Settings\Administrator\桌面\afds.txt''');//cde是表名,后面的是文本文件的路径
sql.Add('with(');
sql.Add('fieldterminator=''|'',');
SQL.Add('rowterminator=''\n'',');
sql.Add('tablock)');
ExecSQL;
end;
//记得加分 ,,直接copy到事件里就OK了,,这里是测试通过的
给你一个最简单的方法导入到数据库中...记得加分...}
with adoquery1 do
begin
close;
sql.Clear;
sql.Add('bulk insert cde from ''C:\Documents and Settings\Administrator\桌面\afds.txt''');//cde是表名,后面的是文本文件的路径
sql.Add('with(');
sql.Add('fieldterminator=''|'',');
SQL.Add('rowterminator=''\n'',');
sql.Add('tablock)');
ExecSQL;
end;
//记得加分 ,,直接copy到事件里就OK了,,这里是测试通过的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询