- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我曾以为 FindFirst 会按字母顺序查找文件,但最近我发现虽然大多数情况都是如此,但有一些文件并不是按字母顺序排列的。
if FindFirst( AProgramPath, faAnyFile, ASearchRec ) = 0 then
repeat
AFilename := ASearchRec.name;
until FindNext( ASearchRec ) <> 0;
FindClose( ASearchRec );
这里的一个特定文件夹中包含大约 300 个文本文件,除了大约 8-10 个文件之外,所有文件都按正确的字母顺序返回。
如果 findfirst 不按字母顺序返回文件,是否有一种方法可用于按字母顺序对文件夹内容进行排序,以便 findfirst 按字母顺序返回文件?
问候,
比尔
最佳答案
FindFirst 函数不对搜索结果进行排序,但您可以使用 TStringList 对文件进行排序。
Procedure GetOrderFiles();
var
ListFiles : TStringList;
result : integer;
ASearchRec: TSearchRec;
begin
ListFiles := TStringList.Create;
try
ListFiles.sorted := True;
result := findFirst(AProgramPath,faAnyFile,ASearchRec );
try
while result = 0 do
begin
if (ASearchRec.name <> '.') and (ASearchRec.name <> '..') then
ListFiles.add(ASearchRec.name);
result:=FindNext(ASearchRec );
end;
finally
FindClose(ASearchRec );
end;
//process your files
//....
finally
ListFiles.free;
end;
end;
关于delphi - FindFirst 是否应该按字母顺序返回找到的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1595727/
我曾以为 FindFirst 会按字母顺序查找文件,但最近我发现虽然大多数情况都是如此,但有一些文件并不是按字母顺序排列的。 if FindFirst( AProgramPath, faAnyFile
在管道中使用findFirst()和map()是否有效。findFirst是短路方法而map是中间操作。 this.list.stream().filter(t -> t.name.equals("p
Stream 的 findFirst 方法在此流中找到第一个元素为 Optional。如果流没有元素,则 findFirst 返回空 Optional。如果流没有遇到顺序,则 findFirst 可以
早上好...我正在列出目录中的所有文件...但我面临以下问题...当文件夹全部都是英文...但操作系统是葡萄牙国防部...如何根据操作系统语言列出: 例如:Program Files (EN) ->
在我的应用程序中,我使用以下过程递归扫描任何文件夹和子文件夹,如果该文件夹包含文本文件 (*.txt),我会将文件名添加到我的过程中定义的 TStringList: procedure FileSea
我将参数值'*1.dat'传递给FindFirst,FindFirst()例程返回的第一个文件仍然是46checks5.dat,非常一致。 这是一个已知问题吗? vpath:=trim(vpath);
以下方法是用于选择歌曲的加权随机选择算法的一部分。 我想将下面的方法转换为使用流,以确定它是否更清晰/更可取。我不确定这是否可能,因为计算是有状态的操作,取决于列表中的位置。 public Song
我有以下代码(TrResponse 和 TrNode 的代码无关): public TrResponse from(final TrNode b1, final TrNode b2, final Tr
我有两个表: AuctionPackage $this->belongsTo('id', 'AuctionPackageTranslation', 'auction_package_id', NULL
我正在使用 Realm 为我的应用程序提供数据库。但是…… 登录后,服务器返回数据,我创建(AccountManager 的)帐户并将这些数据保存在应用程序的数据库中,就像这样(当然是在 AsyncT
我想知道当我知道 100 时,是否有办法在不使用 .orElse() 的情况下消除 findFirst().get() 处的警告% 每次都有结果,所以我从来没有得到 NoSuchElementExce
JavaDocs for findFirst说如果流有遇到顺序,那么总是返回第一个元素,但是如果流没有遇到顺序,则可以返回任何元素。 我试图演示它是如何在没有遇到顺序的流上工作的,但除了实际的第一个元
SortedSet 的 java 8 API 文档仅声明 stream() 继承自 java.util.Collection(参见 https://docs.oracle.com/javase/8/d
我正在从 Core Data (Magical Record) 切换到 Realm,我想知道是否有相当于 MR_findFirst 的东西? 现在,我正在做: if ([myRlmObject all
当使用 FindFirst() 搜索文件时,我在 TSearchRec.Attr 字段中得到一个属性值 2080。帮助中没有指定它,因为只有这些值可用,并且它们的组合不会产生 2080: 1 fa只读
我在 Windows 7 上使用 Delphi 2010,在递归搜索目录时遇到单引号加倍的问题。 这是我搜索目录的代码。 if FindFirst(aPath + '*', faDirectory
我想找到满足某些条件的矩阵每行中第一个值的索引。我想弄清楚如何在不使用数组理解的情况下做到这一点。 这就是我使用数组理解的方式: # let's say we want to find the fir
我想找到满足某些条件的矩阵每行中第一个值的索引。我想弄清楚如何在不使用数组理解的情况下做到这一点。 这就是我使用数组理解的方式: # let's say we want to find the fir
我有一个核心数据模型,该模型由具有多个位置的 Trail 组成。我也在使用 RestKit。我获取线索的代码如下所示: Trail *trail = [Trail findFirst]; 我的问题是每
我搜索并找到了FindFirst returns null问题,但没有人回答。当我认为我做错了什么时,让我用更多的细节来解释我的问题。 我正在开发一款应用,它要求用户先登录,然后让用户使用该应用。 我
我是一名优秀的程序员,十分优秀!