Tstringlist Class List control

Source: Internet
Author: User

//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 TForm1 . 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 ;

Tstringlist Class List control

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.