procedure TForm1.Button5Click(Sender: TObject); var strlist:TStringList; i:Integer; begin Memo1.Text:='11 12 13 14 15 16 17'; Memo2.Clear; strlist:=TStringList.Create; strlist.Delimiter:=' '; strlist.DelimitedText :=Memo1.Text; // Memo2.Lines.Add(IntToStr(strlist.Count)) ; for i:=0 to strlist.Count-1 do begin Memo2.Lines.Add(strlist.Strings[i]); end; strlist.Free; end;
2楼正解,实际上就是利用了TStringList按分隔符自动切割字符串的功能
跟我的解法 差不多 呵呵 不过 还是 谢谢你 哈 ! procedure TForm1.Button1Click(Sender: TObject); var name,path,s:string; i,count: integer; sdata :Tstrings; begin if dlgOpen1.Execute then begin name := extractfilename(dlgOpen1.FileName); path := extractfiledir(dlgOpen1.FileName); end; mmo1.lines.loadfromfile(path+'/'+name); for count:=0 to mmo1.Lines.Count-1 do begin sdata := TStringList.Create; s := mmo1.Lines[count]; ExtractStrings([' '],[],Pchar(s),sdata); for i:= 0 to 6 do showmessage(sdata[i]); end; end;
procedure TForm1.Button5Click(Sender: TObject);
var
strlist:TStringList;
i:Integer;
begin
Memo1.Text:='11 12 13 14 15 16 17';
Memo2.Clear;
strlist:=TStringList.Create;
strlist.Delimiter:=' ';
strlist.DelimitedText :=Memo1.Text;
// Memo2.Lines.Add(IntToStr(strlist.Count)) ;
for i:=0 to strlist.Count-1 do
begin
Memo2.Lines.Add(strlist.Strings[i]);
end;
strlist.Free;
end;
2楼正解,实际上就是利用了TStringList按分隔符自动切割字符串的功能
跟我的解法 差不多 呵呵 不过 还是 谢谢你 哈 !
procedure TForm1.Button1Click(Sender: TObject);
var
name,path,s:string;
i,count: integer;
sdata :Tstrings;
begin if dlgOpen1.Execute then
begin
name := extractfilename(dlgOpen1.FileName);
path := extractfiledir(dlgOpen1.FileName);
end;
mmo1.lines.loadfromfile(path+'/'+name);
for count:=0 to mmo1.Lines.Count-1 do
begin
sdata := TStringList.Create;
s := mmo1.Lines[count];
ExtractStrings([' '],[],Pchar(s),sdata);
for i:= 0 to 6 do
showmessage(sdata[i]);
end;
end;