Delphi字符串列表及应用(二)

如题所述

第1个回答  2022-09-27

   重复操作列表中的字符串 

  很多情况需要对表中的每一个字符串进行操作 如改变字符串的大小写 象这种重复操作可以用 for 循环来实现 同时使用列表的整数类型的索引

  以下代码对列表框的字符串进行重复操作 当用户按下按钮时 对列表框中的字符串进行大小写转换  

  procedure TForm Button Click(Sender: TObject);  var  I: Integer;  begin  for I := to ListBox Items Count do  ListBox Items[I] := UpperCase(ListBox Items[I]);  end;

   装载 保存字符串列表 

  应用程序可以非常方便的把Delphi字符串列表存入文本文件 或者从文本文件中重新装载(或装入另一个不同的列表) 字符串列表有专门的方法处理这类操作

  使用LoadFromFile方法从文件中装载字符串列表 LoadFromFile从文本文件中把每一行字符串装入列表中

  把列表保存在文件中使用SaveToFile方法 使用时传递文件名的参数 如果文件不存在 SaveToFile将创建它 否则将用列表覆盖现有文件内容

  以下代码装入AUTOEXEC BAT的文件 并以AUTOEXEC BAK为文件名进行备份  

  procedure TForm FormCreat(sender:TObject);  var  FileName:String;  begin  FileName:= C:\AUTOEXEC BAT ;  With Memo do  begin  LoadFromFile(FileName)  SaveToFile(ChangeFileExt(FileName BAK ));  end;  end;    创建新的字符串列表 

  大多数情况下 应用程序使用的字符串列表是做为部件的某一部分 因此不必创建列表 但Delphi允许创建不依赖部件的字符串列表

  值得注意的是程序创建的字符串列表必须在使用完之后 释放列表所占用的内存空间 有两种不同的情况需要处理 一是程序以简单的方式创建 使用 释放字符串列表 二是由程序创建 在运行期间均可能使用 在程序终止前释放 这两种情况主要取决于是创建短期字符串列表还是长期字符串列表  

   短期字符串列表 

  短期字符串列表用于处理简单事物 程序在同一处创建 使用 释放列表 这是最安全的使用字符串列表的方法

  因为字符串列表要为自己和它的字符串分配内存 所以要用try finally对列表进行保护 以确保发生异常后释放列表所占用的内存空间

  创建短期字符串列表的基本步骤为

   构造字符串列表对象

   在try finally块中使用列表

   在finally后释放列表空间

  以下代码创建列表 使用列表 最后释放列表空间  

  procedure TForm Button Click(Sender:Tobject);  var  TemList:TStrings;  begin  Templist:=TStringList Create;  try  { use the string list }  finally  Templist Free;  end;  end;    长期字符串列表 

  如果要在程序运行的任何时候使用字符串列表 则需在程序开始运行时就创建列表 并在程序终止前释放

  运行时创建字符串列表的步骤为

   在程序主窗体对象的域中加入TStringsList类型的域

   在主窗体的OnCreate事件中创建句柄 该事件句柄在主窗体显示前运行

   在创建事件句柄后 创建字符串列表对象

   在主窗体的OnDestroy事件创建句柄 该事件句柄在主窗体消失之前运行

  这样 在程序运行过程中 任何过程 事件均能访问该字符串列表

  以下代码在程序中加入了一个Clicklist的字符串列表 用户每按一次鼠标键 程序往Clicklist中加入一字符串 程序结束前把该列表存入文件  

lishixinzhi/Article/program/Delphi/201311/24799

Delphi字符串列表及应用(二)
大多数情况下 应用程序使用的字符串列表是做为部件的某一部分 因此不必创建列表 但Delphi允许创建不依赖部件的字符串列表 值得注意的是程序创建的字符串列表必须在使用完之后 释放列表所占用的内存空间 有两种不同的情况需要处理 一是程序以简单的方式创建 使用 释放字符串列表 二是由程序创建 在运行期间...

DELPHI基础教程:数据浏览部件的应用及编程(二)[3]
缺省情况下为此值 显示一个下拉式列表框和一个编辑框 下拉式列表框中的可选项都是字符串且各选择项占居的高度一样 ● CsSimple 只显示一个列表框 列表框中的可选项都是字符串 且各选项占居一样的高度 ● CSDropDownList 显示一个下拉式列表框和一个编辑框 但用户不能向编辑框中输入一个在列表框中没有的...

Delphi数据库控件使用入门(二)
TDBComboBox构件实际上是TComboBox构件的数据感知版本 它能以组合框的形式显示一组数据 让用户从列表中选择一个值或直接输入一个值 Items属性用于设置列表中要显示的一组数据 在设计期 可以单击Items属性边上的省略号按钮打开一个字符串列表编辑器 然后输入一些字符串 DropDownCount属性用于设置当用户下拉...

好用的Delphi字符串
字符串是Object Pascal所有数据类型中最有用的类型 许多函数以字符串为传递参数 由于在Delphi中字符串的定义和使用有各种方式 包括Pascal中典型的字符串(String) Delphi支持的长字符串(ANSIString) 类似于C语言的字符数组(Array of Char) 指向字符的指针(Pchar)等 下面的文章就跟谈谈这些类型在定义和...

Delphi字符串列表及应用(一)
Delphi应用程序经常要处理字符串列表 如组合框和列表框中的字符串 TMemo部件的文本行 屏幕支持的字体列表 TNotebook部件的tabs属性 字符串网格的行 列等等 虽然应用程序以不同的方法使用这些列表 但Delphi通过一个叫字符串列表(Tstrings)的对象提供统一的界面 并且在不同场合可相互转化 例如 可以在TMemo...

Delphi的位操作以及嵌入式汇编[2]
返回 指针 用EAX返回 长字符串 用EAX返回其所在地址 变量 可用@Result返回 例如 一个用汇编的求和函数 function _Sum(X Y: Integer): Integer;a MOV EAX X \/\/把 位的数放入EAX ADD EAX Y \/\/进行加法运算 MOV @Result EAX \/\/返回X+Y end;lishixinzhi\/Article\/program\/Delphi\/201311\/24898 ...

delphi关于一个字符串操作
var i: integer;c: char;begin l:= length(s);c := s[l];for i := 1 to 4 do begin s := copy(s,1,l-1)+c;...end;

DELPHI基础教程:文件管理(二)[4]
在应用程序中添加图片部件 在本程序中我们设置了三个图片部件NetWork Floppy Fixed 并分别与三个位图文件NetWork bmp Floppy bmp Fixed bmp相关联 把图片添加到字符串链表中 根据字符串链表的性质 我们可以把对象与已存在的字符串建立联系 也可以同时添加字符串和对象 这里我们采用后一种方法 在子窗口的On...

delphi中字符串的操作
给你一个字符串分割函数,当年我做163图片下载的时候写的。定义两个tstringlist类型的 第一个用来存放UID不同的。从你上边看,是以‘},{’为区分标志的。第二个用来详细划分。strlist1:=SplitStr(str,'},{');for i:=0 to strlist1.count-1 do strlist2.clear;strlist2:=splitstr(str...

delphi 中sql语句的字符串怎么使用和处理
在 delphi 语言中编写 SQL 语句的字符串,除去 SQL 语法方面,在引号的处理上需要格外注意,如常见的 Select 语句:select 姓名 from db_use where 编号='123456'如果在 delphi 里编写,则需要考虑到单引号的问题,通常的解决办法如下:1、如果数据库支持双引号,则可以使用双引号代替:str := '...

相似回答
大家正在搜