首页 > 其他分享 >TStringList 常用方法与属性

TStringList 常用方法与属性

时间:2023-08-30 17:31:51浏览次数:36  
标签:常用 aaa TStringList List bbb Add ShowMessage 属性

TStringList 常用方法与属性:  2  var
  3 List: TStringList;
  4 i: Integer;
  5 begin
  6 List := TStringList.Create;
  7 List.Add('Strings1');           {添加}
  8 List.Add('Strings2');
  9 List.Exchange(0,1);             {置换}
 10 List.Insert(0,'Strings3');      {插入}
 11 i := List.IndexOf('Strings1');  {第一次出现的位置}
 12 List.Sort;                      {排序}
 13 List.Sorted := True;   {指定排序}
 14 List.Count;                     {总数}
 15 List.Text;                      {文本集合}
 16 List.Delete(0);                 {删除, 0是第一个数据}
 17 List.LoadFromFile('c:/tmp.txt');{打开}
 18 List.SaveToFile('c:/tmp.txt');  {保存}
 19 List.Clear;                     {清空}
 20 List.Free;                      {释放}
 21 end;
 22 
 23 //读入字符串
 24 var
 25 List: TStringList;
 26 begin
 27 List := TStringList.Create;
 28 List.CommaText := 'aaa,bbb,ccc,ddd';
 29 //相当于: List.Text := 'aaa' + #13#10 + 'bbb' + #13#10' + 'ccc' + '#13#10' + 'ddd';
 30 
 31 ShowMessage(IntToStr(List.Count));  //4
 32   ShowMessage(List[0]);  //aaa
 33 
 34 List.Free;
 35 end;
 36 
 37 //置换分隔符
 38 var
 39 List: TStringList;
 40 begin
 41 List := TStringList.Create;
 42 List.Delimiter := '|';
 43 List.DelimitedText := 'aaa|bbb|ccc|ddd';
 44 
 45 ShowMessage(IntToStr(List.Count));  //4
 46   ShowMessage(List[0]);  //aaa
 47 
 48 List.Free;
 49 end;
 50 
 51 
 52 //类似的哈希表操作法
 53 var
 54 List: TStringList;
 55 begin
 56 List := TStringList.Create;
 57 
 58 List.Add('aaa=111');
 59 List.Add('bbb=222');
 60 List.Add('ccc=333');
 61 List.Add('ddd=444');
 62 
 63 ShowMessage(List.Names[1]);  //bbb
 64   ShowMessage(List.ValueFromIndex[1]);  //222
 65   ShowMessage(List.Values['bbb']);  //222
 66 
 67 //ValueFromIndex 可以赋值:
 68   List.ValueFromIndex[1] := '2';
 69 ShowMessage(List[1]);  //bbb=2
 70 
 71 //可以通过 Values 赋值:
 72   List.Values['bbb'] := '22';
 73 ShowMessage(List[1]);  //bbb=22
 74 
 75 List.Free;
 76 end;
 77 
 78 //避免重复值
 79 var
 80 List: TStringList;
 81 begin
 82 List := TStringList.Create;
 83 
 84 List.Add('aaa');
 85 
 86 List.Sorted := True;  //需要先指定排序
 87   List.Duplicates := dupIgnore;  //如有重复值则放弃
 88 
 89 List.Add('aaa');
 90 
 91 ShowMessage(List.Text);  //aaa
 92 
 93 //Duplicates 有3个可选值:
 94   //dupIgnore: 放弃;
 95   //dupAccept: 结束;
 96   //dupError: 提示错误.
 97 
 98 List.Free;
 99 end;
100 
101 //排序与倒排序
102 {排序函数}
103 function DescCompareStrings(List: TStringList; Index1, Index2: Integer): Integer;
104 begin
105 Result := -AnsiCompareText(List[Index1], List[Index2]);
106 end;
107 
108 procedure TForm1.Button1Click(Sender: TObject);
109 var
110 List: TStringList;
111 begin
112 List := TStringList.Create;
113 
114 List.Add('bbb');
115 List.Add('ccc');
116 List.Add('aaa');
117 
118 //未排序
119   ShowMessage(List.Text);  //bbb ccc aaa
120 
121 //排序
122   List.Sort;
123 ShowMessage(List.Text);  //aaa bbb ccc
124 
125 //倒排序
126   List.CustomSort(DescCompareStrings);  //调用排序函数
127   ShowMessage(List.Text);  //ccc bbb aaa
128 
129 //假如:
130   List.Sorted := True;
131 List.Add('999');
132 List.Add('000');
133 List.Add('zzz');
134 ShowMessage(List.Text);  //000 999 aaa bbb ccc zzz
135 end;

标签:常用,aaa,TStringList,List,bbb,Add,ShowMessage,属性
From: https://blog.51cto.com/u_16241767/7295499

相关文章

  • Mysql常用SQL语句
    --查询数据库中有多少表SELECTCOUNT(1)TABLES,table_schemaFROMinformation_schema.TABLESWHEREtable_schema='数据库名'GROUPBYtable_schema;--查询表中有多少字段SELECTCOUNT(*)FROMinformation_schema.COLUMNSWHEREtable_schema='数据库名'ANDtabl......
  • 常用Exchange邮件统计命令汇总
    统计时间段内邮件发送情况Get-MessageTrackingLog-ResultSizeunlimited-Start"8/1/2023"-End"8/31/2023"-EventIdsend-Serverexmbx01|Measure-Object 统计某个邮箱发送情况Get-MessageTrackingLog-ResultSizeunlimited-Start"8/1/2023"-End"8/......
  • tidevice中常用api 浅谈
     -设备管理类API: -`pair(device:Device)->bool`:配对一个iOS设备,返回是否成功。-`unpair(device:Device)->bool`:解除配对一个iOS设备,返回是否成功。-`list_devices()->List[Device]`:列出所有已连接的iOS设备,返回一个设备对象的列表。-`get_device_info(devic......
  • STL- 常用算法
    5STL-常用算法概述:算法主要是由头文件<algorithm><functional><numeric>组成。<algorithm>是所有STL头文件中最大的一个,范围涉及到比较、交换、查找、遍历操作、复制、修改等等<numeric>体积很小,只包括几个在序列上面进行简单数学运算的模板函数<functional>定......
  • STL- 常用容器
    3STL-常用容器3.1string容器3.1.1string基本概念本质:string是C++风格的字符串,而string本质上是一个类string和char*区别:char*是一个指针string是一个类,类内部封装了char*,管理这个字符串,是一个char*型的容器。特点:string类内部封装了很多成员方法例如:查找fi......
  • 第一部分 1.1 信息与信息技术 1.1.1信息与数据 信息的概念: 一般认为:信息是在自然界
    第一部分1.1信息与信息技术1.1.1信息与数据信息的概念: 一般认为:信息是在自然界、人类社会和人类思维活动中普遍存在的一切物质和事物的属性。 信息能够用来消除事物不确定的因素数据的概念: 是指存储在某种媒体上可以加以鉴别的符号资料。(符号,不仅指文字、字母和数字等,还包括......
  • js 常用链接
    nodeguide:TheNode.jsEventLoop,Timers,andprocess.nextTick()vuexvue3vitevitest......
  • ESP32 idf常用脚本命令及git命令
    一、Linux环境1.下载并安装相关的工具./install.sh2.添加ESP-IDF工具到PATH中../export.sh3.打开配置界面idf.pymenuconfig4.设置编译的芯片型号idf.pyset-targetesp32c35.编译工程idf.pybuild6.指定串口和波特率烧录程序并打开串口监视器idf.pyflash-b1500......
  • Python 中一些常用的
    对变量类型转换的内置函数int():将一个数值或字符串转换成整数,可以指定进制。float():将一个字符串转换成浮点数。str():将指定的对象转换成字符串形式,可以指定编码。chr():将整数转换成该编码对应的字符串(一个字符)。ord():将字符串(一个字符)转换成对应的编码(整数)。这个经常用。......
  • Git 常用命令 --- git add命令
    Gitadd的一般形式为:gitadd[参数] [--]<路径>表示将需要提交的代码从工作区添加到暂存区。为了方便,一般都用.来标识路径,.表示当前目录。 1.gitadd.网上普遍的说法是:将修改操作的文件和未跟踪且为新添加的文件添加到git系统的暂存区,但不包括删除的文件。但实际测试,git......