delphi TStringList 用法详解
程序员文章站
2022-03-10 13:12:36
//TStringList 常用方法与属性 : 原文链接:https://blog.csdn.net/sunylat/article/details/24886695 ......
//tstringlist 常用方法与属性 :
var list: tstringlist; i: integer; begin list := tstringlist.create; list.add('strings1'); {添加} list.add('strings2'); list.exchange(0,1); {置换} list.insert(0,'strings3'); {插入} i := list.indexof('strings1'); {第一次出现的位置} list.sort; {排序} list.sorted := true; {指定排序} list.count; {总数} list.text; {文本集合} list.delete(0); {删除, 0是第一个数据} list.loadfromfile('c:/tmp.txt');{打开} list.savetofile('c:/tmp.txt'); {保存} list.clear; {清空} list.free; {释放} end; //读入字符串 var list: tstringlist; begin list := tstringlist.create; list.commatext := 'aaa,bbb,ccc,ddd'; //相当于: list.text := 'aaa' + #13#10 + 'bbb' + #13#10' + 'ccc' + '#13#10' + 'ddd'; showmessage(inttostr(list.count)); //4 showmessage(list[0]); //aaa list.free; end; //置换分隔符 var list: tstringlist; begin list := tstringlist.create; list.delimiter := '|'; list.delimitedtext := 'aaa|bbb|ccc|ddd'; showmessage(inttostr(list.count)); //4 showmessage(list[0]); //aaa list.free; end; //类似的哈希表操作法 var list: tstringlist; begin list := tstringlist.create; list.add('aaa=111'); list.add('bbb=222'); list.add('ccc=333'); list.add('ddd=444'); showmessage(list.names[1]); //bbb showmessage(list.valuefromindex[1]); //222 showmessage(list.values['bbb']); //222 //valuefromindex 可以赋值: list.valuefromindex[1] := '2'; showmessage(list[1]); //bbb=2 //可以通过 values 赋值: list.values['bbb'] := '22'; showmessage(list[1]); //bbb=22 list.free; end; //避免重复值 var list: tstringlist; begin list := tstringlist.create; list.add('aaa'); list.sorted := true; //需要先指定排序 list.duplicates := dupignore; //如有重复值则放弃 list.add('aaa'); showmessage(list.text); //aaa //duplicates 有3个可选值: //dupignore: 放弃; //dupaccept: 结束; //duperror: 提示错误. list.free; end; //排序与倒排序 {排序函数} function desccomparestrings(list: tstringlist; index1, index2: integer): integer; begin result := -ansicomparetext(list[index1], list[index2]); end; procedure tform 1.button1click(sender: tobject); var list: tstringlist; begin list := tstringlist.create; list.add('bbb'); list.add('ccc'); list.add('aaa'); //未排序 showmessage(list.text); //bbb ccc aaa //排序 list.sort; showmessage(list.text); //aaa bbb ccc //倒排序 list.customsort(desccomparestrings); //调用排序函数 showmessage(list.text); //ccc bbb aaa //假如: list.sorted := true; list.add('999'); list.add('000'); list.add('zzz'); showmessage(list.text); //000 999 aaa bbb ccc zzz end;
原文链接:https://blog.csdn.net/sunylat/article/details/24886695
上一篇: MySql入门