//TStringList 常用方法与属性:
var
List: TStringList;
i:
Integer
;
begin
List := TStringList
.
Create;
List
Add(
'Strings1'
);
{添加}
'Strings2'
);
Exchange(
0
,
1
);
{置换}
Insert(
'Strings3'
);
{插入}
i := List
IndexOf(
);
{第一次出现的位置}
Sort;
{排序}
Sorted :=
True
;
{指定排序}
Count;
{总数}
Text;
{文本集合}
Delete(
);
{删除,0是第一个数据}
LoadFromFile(
'c:\tmp.txt'
);
{打开}
SaveToFile(
{保存}
Clear;
{清空}
Free;
{释放}
end
;
//读入字符串
var
List: TStringList;
begin
Create;
CommaText :=
'aaa,bbb,ccc,ddd'
;
//相当于: List.Text := 'aaa' + #13#10 + 'bbb' + #13#10' + 'ccc' + '#13#10' + 'ddd';
ShowMessage(IntToStr(List
Count));
//4
ShowMessage(List[
]);
//aaa
Free;
;
//置换分隔符
var
List: TStringList;
begin
Create;
Delimiter :=
'|'
;
DelimitedText :=
'aaa|bbb|ccc|ddd'
;
//4
//aaa
Free;
;
//类似的哈希表操作法
var
List: TStringList;
begin
Create;
'aaa=111'
);
'bbb=222'
);
'ccc=333'
);
'ddd=444'
);
ShowMessage(List
Names[
//bbb
ValueFromIndex[
//222
Values[
'bbb'
//222
//ValueFromIndex 可以赋值:
] :=
'2'
;
//bbb=2
//可以通过 Values 赋值:
'22'
;
//bbb=22
Free;
;
//避免重复值
var
List: TStringList;
begin
Create;
'aaa'
);
;
//需要先指定排序
Duplicates := dupIgnore;
//如有重复值则放弃
);
Text);
//aaa
//Duplicates 有3个可选值:
//dupIgnore: 放弃;
//dupAccept: 结束;
//dupError: 提示错误.
Free;
;
//排序与倒排序
{排序函数}
function
DescCompareStrings(List: TStringList; Index1,Index2:
):
;
begin
Result := -AnsiCompareText(List[Index1],List[Index2]);
;
procedure
TForm1
Button1Click(Sender: TObject);
var
List: TStringList;
begin
Create;
);
'ccc'
);
);
//未排序
//bbb ccc aaa
//排序
Sort;
//aaa bbb ccc
//倒排序
CustomSort(DescCompareStrings);
//调用排序函数
//ccc bbb aaa
//假如:
;
'999'
);
'000'
);
'zzz'
);
//000 999 aaa bbb ccc zzz
;
|
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。