搜档网

搜档网

当前位置:搜档网 > Tstrings类使用技巧

Tstrings类使用技巧

Delphi中TStrings类的使用方法

Tstrings类:字符串列表类。

之前学习的ComboBox.Items和Listbox.Items对象就是Tstrings类型,Tstrings类型对象的属性、方法与其一样。

//例如:显示ini文件里指定小节下的所有行,包括关键字、=和值。

var

filename:string;

key,dbsource,dbname:string;//ini文件dbsetup节的3个关键字

strlist:Tstrings;//声明字符串列表变量

i:integer; //strlist对象索引

begin

filename:=ExtractFilePath(Application.ExeName)+'\setup.ini';

inif:=TInifile.Create(filename); //打开文件

strlist:=TstringList.Create; //用TStringList.Create创建对象

inif.ReadSectionValues('dbsetup',strlist);

memo1.Lines.Add(strlist.Text) ; //将strlist里所有字符串显示出来

inif.ReadSectionValues('dbsetup',strlist);

memo1.Lines.Add(strlist.Text) ;

//释放文件

inif.Free;

end;

TStrings类常用属性

1、CommaText属性

const

constr :String = 'aaa,bbb,ccc,ddd';

var

strs :TStrings;

i :Integer;

begin

strs := TStringList.Create;

http://www.sodocs.net/doc/154193e08662caaedd3383c4bb4cf7ec4bfeb67e.htmlmaText := constr; //把一个字符串以','为分割符分段添加到TStrings。

for i := 0 to Strs.Count-1 do

ShowMessage(Strs[i]); //分别显示aaa bbb ccc ddd。

end;

2、Delimiter、DelimitedText属性

const

constr :String = 'aaa/bbb/ccc/ddd';

var

strs :TStrings;

i :Integer;

begin

strs := TStringList.Create;

strs.Delimiter := '/'; //Delimiter为分隔符,默认为:','。

strs.DelimitedText := constr;//一个字符串按Delimiter指定分隔符分段添加到TStrings中。

for i := 0 to Strs.Count-1 do

ShowMessage(Strs[i]); //分别显示aaa bbb ccc ddd。

end;

3、Names、Values、ValueFromIndex属性(处理ini文件时常用)

const

constr :String = '0=aaa,1=bbb,2=ccc,3=ddd';

var

strs :TStrings;

i :Integer;

begin

strs := TStringList.Create;

http://www.sodocs.net/doc/154193e08662caaedd3383c4bb4cf7ec4bfeb67e.htmlmaText := constr;

for i:=0 to strlist.Count -1 do

memo1.Lines.Add (strlist[i]); //显示所有内容

// memo1.Lines.Add (http://www.sodocs.net/doc/154193e08662caaedd3383c4bb4cf7ec4bfeb67e.htmls[i]); //显示所有关键字

//memo1.Lines.Add (strlist.Values[http://www.sodocs.net/doc/154193e08662caaedd3383c4bb4cf7ec4bfeb67e.htmls[i]]);//显示所有关键字的值

//memo1.Lines.Add (strlist.ValueFromIndex [i]); //显示所有关键字的值

end;

其中strs[i]显示各个字符串内容:

0=aaa

1=bbb

2=ccc

3=ddd

http://www.sodocs.net/doc/154193e08662caaedd3383c4bb4cf7ec4bfeb67e.htmls[i]显示等号左边的内容:

1

2

3

strs.Values[http://www.sodocs.net/doc/154193e08662caaedd3383c4bb4cf7ec4bfeb67e.html[i]]和strs.Valuesfromindex[i]显示等号右边内容:aaa

bbb

ccc

ddd