zoukankan      html  css  js  c++  java
  • delphi TStringList 用法详解

    delphi TStringList 用法详解
    //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; {释放}

    delphi TStringList 用法详解
    //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=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;
    ————————————————

    //排序与倒排序
    {排序函数}
    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;
    ————————————————

  • 相关阅读:
    电脑发朋友圈神器?不是严格意义上的
    微信公众平台投票功能升级 可多渠道发布投票
    多客服功能终于也向所有微信认证的订阅号开放了
    微信电脑版-微信for windows客户端发布
    微信朋友圈广告的赢家是他们
    微信公众平台原创声明功能公测 自媒体原创保护的福音
    微信公众平台数据接口正式对所有认证公众号开放
    壕,微信6.1版发微信红包更方便了,我们去喝杯茶吧
    微信公开课发布微信官方教程:教你用好微信JS-SDK接口
    微信公众平台开放JS-SDK(微信内网页开发工具包)
  • 原文地址:https://www.cnblogs.com/ximi07/p/11858379.html
Copyright © 2011-2022 走看看