读文本文件中的字符串..不会了.请大家帮忙.(100)

  • 主题发起人 主题发起人 why_119
  • 开始时间 开始时间
W

why_119

Unregistered / Unconfirmed
GUEST, unregistred user!
文本文件 a.txt 中<a>asdfasdfasdf</a><a>354345 //第一行3453453</a> //第二行我想读<a>到</a>的内容 包括<>中结果应该是 下面的两个字符串<a>asdfasdfasdf</a><a>3543453453453</a>
 
大致思路:var s1,s2:String
f:TextFile
K:Integer;begin s1:=''
s2:=''
assignfile(.... while not eof(f) do begin readln(f,s1)
if s2<>'' then s1:=s2+s1
K:=Pos('</a>', s1)
if K>0 then begin memo1.lines.add( Copy(s1,1,K+3)
system.delete(S1,1,K+3)
end
S2:=S1
end;end;
 
你这方法可以.谢谢但是...如果文本文件 a.txt 中dssd</a>sdsds<a>asdfasdfasdf</a><a>354345 //第一行3453453</a>dfssdkjhkjhkjh //第二行如何写呀...
 
这样的文本,用正则表达式分析可能比较好
 
readln(f,s1)
//改为READ
 
{$H+}tms:string;setlength(tmstr,1024*1024)
/1M字节应该够了把整个文本恶文件读入tmstr[1]开始的位置,然后把所有#13换为'' {空},把所有#10换为'' {空}然后在找<a>呵</a>之间的内容即可,可以用Pos, PosEX呵呵!
 

Similar threads

回复
0
查看
1K
不得闲
回复
0
查看
861
不得闲
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
911
SUNSTONE的Delphi笔记
S
后退
顶部