![]() |
1
8
我认为最快的方法是使用ioutils.pas中的tdirectory.getfiles方法。由于目录中(可见)文件的数量对于每个用户可能是不同的,所以只有很小的机会可以以某种方式检索到一个数字。 findfirst/findnext方法(包装在上面的方法中)实际上不遍历文件,它只遍历表中的条目,因此可能比预期的更快。 |
![]() |
2
10
如果您在Windows 7或Server 2008 R2上运行,我建议从sysutils中提取findfirst和findmatchingfile函数,并对前者进行黑客攻击以使用findfirstfileex而不是findfirstfile。然后可以将附加标志参数设置为2(在msdn中定义为
此设置会显著提高这些操作系统上的findFirst/findNext循环的速度。寻找 FindFirstFileEx 有关详细信息,请参阅msdn,因为Delphi帮助检索到的最新文档不在Microsoft文档中。 tdirectory.getfiles最终似乎会调用findfirst,因此除了简化自己的代码外,它不会给您带来很多好处。 |
![]() |
Community wiki · 需要改变的用户界面模式? 1 年前 |
![]() |
LITzman · 使用状态处理颜色主题更改 1 年前 |
![]() |
Community wiki · 进程。退出(0):输出消失? 1 年前 |
![]() |
arsaces · 将文本添加到特定文件的末尾 2 年前 |
![]() |
YGranja · 库<图形。h> MinGW-W64缺少 2 年前 |
![]() |
Felipe Palermo · Ctrl键仍被按下,按键事件() 2 年前 |
![]() |
HCJ · win cmd中的批处理脚本循环 2 年前 |