var strs:TStringList; source,s:string; begin source:=。//取出那一串东西。。 strs:=TStringList.Create; strs.Text:=source; s:=strs.Values['OT4'];//TSTRINGLIST有很方便功能。。 ShowMessage(s); strs.Free; end;
procedure TForm1.Button4Click(Sender: TObject); var t:tstringlist; begin t:=tstringlist.Create; t.Add(SQLQuery1.fieldbyname('df').AsVariant); edit1.Text:=t.Strings[0]; edit2.text:=t.strings[6];end;end.
Out1=18:00
OT1=False
OT2=False
OT3=False
OT4=False
Rest1=30
我要取出In1=、Rest1=后面的值,该用什么方法 // 说具体点 In1=后面所有的么 还是In1后面 Rest1前面 就是说两个1之间的??
首先 全部取出来
strAll := FieldByName('').AsString;
iPos1 := Pos('In1=', strAll);
iPos2 := Pos('Rest1=', strAll); // 4: Length('In1=')//4: Length('In1=')6: Length('Rest1=')
如果是之间的 str := Copy(strAll, iPos1 + 4 + 1, Length(strAll) - 4 - 6);你可以自己去写一些 就是Copy,Pos的用法 不是很难的。
strs:TStringList; source,s:string;
begin
source:=。//取出那一串东西。。 strs:=TStringList.Create;
strs.Text:=source;
s:=strs.Values['OT4'];//TSTRINGLIST有很方便功能。。
ShowMessage(s); strs.Free;
end;
var
t:tstringlist;
begin
t:=tstringlist.Create;
t.Add(SQLQuery1.fieldbyname('df').AsVariant);
edit1.Text:=t.Strings[0];
edit2.text:=t.strings[6];end;end.