如何快速获取一个指定的文件夹中所有文件(包含子目录)的信息。(2万个文件以上) 如题,我现在用的是递归方式来检索文件,文件少还无所谓,一多起来就很耗时了。有什么办法可以再5秒钟以内获取最少2万个文件的信息呢?还有就是检索出来的信息我是用链表来装的,算法是用汇编写的,是否链表的储存方式要比较耗时呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 自己读文件分配表能否比用FindFirstFile()+FindNextFile()快点呢? 在这里不能用递归了!!!!!11.文件数很多要求快递归的速度,咱么心里都明白2.这也是最重要的是,你要厉遍2w个文件,递归要用栈的空间,可能引起栈空间耗尽发生crash获取系统hang的严重问题3.在描述搜索算法时,c比asm好的多,并且asm也是这么写,还是告诉楼主用c的堆来解决 “自己读文件分配表能否比用FindFirstFile()+FindNextFile()快点呢?”会的,但比较难要速度快,就是要优化程序,少用高级别API,即使如此,2w个文件在5秒完成的可能性很少 Did u consider MSN or Google Desktop Search? jiangsheng(蒋晟.Net[MVP]) 所说的要有索引才行的吧,在我的机器Winxp获取16000个文件大概要8秒左右.如果处理得当5秒获得2万个文件的信息还是可以的吧,还要看机器速度.主要是文件名,大小,各种时间的吧. 文件多用递归慢?这是什么逻辑?文件多并不是等于层次多,如果文件全部都在一个文件夹内,那么即使你用递归写的算法,他也不‘递归’啊-。-我觉得这个速度的瓶颈可能是出在动态的内存分配上。___________________________________________________ 是哦,如果不是多层次的话,跟递归就几乎无关了!直接获得fat表什么的也未必快,其中的转换也许还不如用api函数! 我觉得上面的人说的很在理~ bat运行dll与字体的问题 求助控件问题 闲着没事,看了一天.NET 为什么使用CreateFile时,第一个参数不能设为COM10或者比10更大? 进来讨论讨论(放分)! 2000下如何端口读写? 发送数据的问题,有点难度...... 关于对话框中使用CEdit控件的问题,请网友指导! 请问如何自画CListCtrl的Column Header? 我想在上面放箭头,并把它变成平的按钮 输入为汉语为何会显示出韩语? 关闭IE时控件窗口竟然收不到通知,以致无法正常释放资源,郁闷散分 如何能得到另一个进程的套接字?
1.文件数很多要求快递归的速度,咱么心里都明白2.这也是最重要的是,你要厉遍2w个文件,递归要用栈的空间,可能引起栈空间耗尽发生crash获取系统hang的严重问题3.在描述搜索算法时,c比asm好的多,并且asm也是这么写,还是告诉楼主用c的堆来解决
会的,但比较难
要速度快,就是要优化程序,少用高级别API,即使如此,2w个文件在5秒完成的可能性很少
在我的机器Winxp获取16000个文件大概要8秒左右.
如果处理得当5秒获得2万个文件的信息还是可以的吧,还要看机器速度.
主要是文件名,大小,各种时间的吧.
文件多并不是等于层次多,如果文件全部都在一个文件夹内,那么即使你用递归写的算法,
他也不‘递归’啊-。-我觉得这个速度的瓶颈可能是出在动态的内存分配上。
___________________________________________________
是哦,如果不是多层次的话,跟递归就几乎无关了!直接获得fat表什么的也未必快,其中的转换也许还不如用api函数! 我觉得上面的人说的很在理~