tstringlist相关内容

我怎样才能让 TStringList 在 Delphi 中以不同的方式排序

我有一个简单的 TStringList.我对它做了一个 TStringList.Sort . 然后我注意到下划线“_"排在大写字母“A"之前.这与对相同文本进行排序并在 A 之后排序 _ 的第三方包形成对比. 根据 ANSI 字符集,A-Z 是 65 - 90 的字符,_ 是 95.所以看起来 3rd 方包正在使用该顺序,而 TStringList.Sort 不是. 我深入研究了 ..
发布时间:2021-11-28 17:47:38 其他开发

Delphi:将特定行从 Stringlist 复制到另一个

当我尝试按索引将特定字符串从一个 TStringList 复制到另一个时,出现“索引限制超出债券"错误. 我有一个文本文件,其中包含用管道“|"格式化的行分隔符.它看起来像这样: 在我的目标文件中,我只想从以 '3M' 开头的行中复制一些项目,以获得如下内容(例如第一行): 3M 2189300002 12.99 3M 是 Stringlist.strings[1] 21 ..
发布时间:2021-09-06 19:15:50 其他开发

使用TStringList的奇怪的EOutOfMemory异常

我有一个系统,该系统加载一些文本文件,这些文本文件压缩为".log"文件,然后使用多个线程解析为信息类,每个线程处理一个不同的文件并将解析的对象添加到列表中. 该文件是使用TStringList加载的,因为它是我测试过的最快的方法. 文本文件的数量是可变的,但是通常我必须一次处理5到8个文件,范围从50Mb到120Mb. 我的问题:用户可以按需要多次加载.log文件,并且在执行某些过程 ..
发布时间:2020-07-11 20:21:20 其他开发

如何遍历定界字符串并将字符串内容分配给本地delphi变量?

我编写了一个Delphi函数,该函数将.dat文件中的数据加载到字符串列表中.然后,它解码字符串列表并分配给字符串变量.字符串的内容使用'#'符号作为分隔符. 然后如何获取此字符串的内容,然后将其内容分配给局部变量? // Function loads data from a dat file and assigns to a String List. function TfrmMai ..
发布时间:2020-07-11 20:21:17 其他开发

Delphi for循环和StringList错误

好的,我一直在尝试找出我可能犯的每一个错误,但是我放弃了……我需要帮助!我正在写的是一个用于管理我的工作的租金的应用程序,当日期过去时,我的应用程序从2个文本文件中删除了该名称.我写了3个小函数(程序)来完成这项工作.在这里: 这是从dates.dat文件加载的,并删除了包含员工姓名的行. procedure remDate(emp: String);/// Removes emplo ..
发布时间:2020-07-11 20:20:10 其他开发

如何在Delphi中用稳定的排序替换StringList.Sort?

我正在做一个简单的StringList.sort,但是Delphi使用的QuickSort并不是稳定的排序,这意味着它可能会用相同的键更改记录的相对顺序. 我需要使用一种稳定的排序方式.对我来说,最简单的方法是什么? 迈克W的答案可能是最简单的方法,不需要太多的代码更改. 谢谢,迈克. 解决方案 如果您尚未使用字符串列表的Objects属性,一种快速而又肮脏的解决方案是将 ..
发布时间:2020-07-11 20:20:07 其他开发

为什么memo.Lines使用TStrings而不是TStringList?

为什么Memo.Lines使用抽象类TStrings?为什么不使用TStringList代替? 在使用它之前我应该​​将其转换为TStringList吗? 解决方案 TMemo.Lines,TListBox.Items,TComboBox.Items等;全部都声明为TStrings.当心,说的是财产!内部创建的类型分别为TMemoStrings,TListBoxStrings和TCo ..
发布时间:2020-07-11 20:20:03 其他开发

如何在字符串中存储和加载键值对列表?

我有一个字符串列表以及它们将被替换的值.我正在尝试将它们合并到'O'='0',' .'='.', ...之类的列表中,因此我很容易对其进行编辑并添加更多替换对. 现在我能想到的最好的方法是: var ListaLimpeza : TStringList; begin ListaLimpeza := TStringList.Create; ListaLimpeza.Deli ..
发布时间:2020-07-11 20:20:00 其他开发

比较和排序Unicode文件名

将Delphi 2007和TMS组件用于Unicode utils和界面(不能将其升级到Delphi 2009以支持Unicode). 我将文件名列表存储在字符串列表(TTntStringList)中.它已排序且不区分大小写.默认的排序例程使用CompareStringW(LOCALE_USER_DEFAULT,NORM_IGNORECASE,...)比较字符串(与“查找"相同).但是,这是 ..
发布时间:2020-07-11 20:19:57 其他开发

TStringList.LoadFromFile-大型文本文件的异常

我正在运行Delphi RAD Studio XE2. 我有一些非常大的文件,每个文件包含很多行.线条本身很小-仅3个制表符分隔的双打.我想使用TStringList.LoadFromFile将文件加载到TStringList中,但这会引发大文件异常. 对于200万行(约1GB)的文件,出现EIntOverflow异常.对于较大的文件(例如2000万行和大约10GB),出现ERange ..
发布时间:2020-07-11 20:19:54 其他开发

在Delphi Prism中替换TStringList。

我正在将用Delphi 2007 .Net编写的应用程序迁移到Delphi Prism,这是替换TStringList和TStrings类的最佳选择吗? 谢谢。 再见。 解决方案 只需使用.NET框架中的内置列表类型,或使用 StringCollection 。 The最简单的是通用列表: List 但是StringCollec ..
发布时间:2020-06-11 19:03:24 其他开发

使用分隔符解析一个字符串到TStringList,似乎也解析空格(Delphi)

我有一个简单的字符串,由一些字符分隔,我们来说一个逗号。我应该能够创建一个TStringList并将其分隔符设置为逗号,然后将DelimitedText设置为我要解析的文本,并且应该自动解析。 问题是当我看看输出,它还包括空格作为分隔符,并排除我的结果。如何避免这种情况,或者有更好的方法来做到这一点。 解决方案 在TStringList中有一个StrictDelimiter属性。将其 ..
发布时间:2017-04-28 20:40:52 Delphi

Stringlist作为字符串分隔符?

我在一个存储为字符串的对象中有一个名为HistoryText的属性。 我想显示网格中的所有行。我应该能够删除和编辑网格中的行。 格式为: 16.5.2003 - $ - 12:09 - $ - anna - $ - 组织创建 2.6.2005 - $ - 13:03 - $ - jimmy - $ - 组织编辑 19.12.2005 - ..
发布时间:2017-04-28 19:23:01 Delphi

用整数使用TStringList的AddObject?

使用delphi 7: 如何在stringlist项目的对象部分中添加一个整数, 使用 AddObject ? 如何从stringList项目的 属性中检索整数? 完成后如何释放所有对象并列出 ? 解决方案 Q: 如何使用AddObject向stringlist项目的对象部分添加一个整数? A:只需将整数值转换为 TObject List.AddObject( ..
发布时间:2017-04-24 22:10:09 Delphi

TStringList与TList< string>

使用标准有什么区别 键入 sl:TStringList 与使用通用TList相比 type sl:TList ? 看到,两者的行为完全一样。 这只是另一种做同样的事情吗? 是有些情况会比另一个更好吗? 谢谢! 解决方案 TStringList是TStrings的后代 ..
发布时间:2017-04-24 03:32:19 Delphi