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

  • 相关阅读:
    vim——打开多个文件、同时显示多个文件、在文件之间切换(转)
    内核任务调度与数据结构
    chrome浏览器iframe兼容性问题,隐藏起来再显示滚动条消失?
    九、迭代器、生成器、函数递归调用与二分法
    八、函数、闭包、装饰器
    七、函数
    六、字符编码、文件
    五、列表、元组、字典、集合详解
    四、字符串及其内置方法
    三、内存管理、数据类型、基本运算符、流程控制
  • 原文地址:https://www.cnblogs.com/ximi07/p/11858379.html
Copyright © 2011-2022 走看看