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;
    ————————————————

  • 相关阅读:
    hdu1087Super Jumping! Jumping! Jumping!(dp)
    划分树 hdu4417Super Mario
    poj2240Arbitrage(map+floyd)
    hdu4282A very hard mathematic problem
    hdu1421搬寝室(dp)
    【洛谷P3806】【模板】点分治1
    【CF914E】Palindromes in a Tree
    GDOI2020 游记
    【POJ2296】Map Labeler
    【洛谷P6623】树
  • 原文地址:https://www.cnblogs.com/ximi07/p/11858379.html
Copyright © 2011-2022 走看看