使用CFileFind类,如何实现按照顺序获得文件夹下的文件
比如文件夹IMAGEFILE下面有四张图像,分别为1.bmp2.bmp3.bmp4.bmp,我使用按照名称排列,这四张图像在文件夹下的顺序就是1234,可是有时候不知道什...
比如文件夹IMAGEFILE下面有四张图像,分别为1.bmp 2.bmp 3.bmp 4.bmp,我使用按照名称排列,这四张图像在文件夹下的顺序就是1 2 3 4 ,可是有时候不知道什么原因,使用FindNextFile();和GetFilePath();命令先得到的不是1而是4.但是有的对另外的文件夹中可能顺序有是对的,请问各位高手,这个CFileFind中是什么原因导致的我上面的情况!!
展开
若以下回答无法解决问题,邀请你更新回答
1个回答
展开全部
FindNextFile你在这个函数上加个断点,debug进去就知道他的next是什么意思了。
追问
你好,断点进去我也看不懂,我就想知道,我本来在文件夹下按照名称进行排好的顺序,可是读到的图像顺序却是按照修改日期的先后顺序进行的读取,请问,怎么设定程序可以实现,按照名称排好的顺序进行读取。
追答
CFileFind是默认按照日期来读取的。
这个不能通过参数来设置。如果想按照名字的顺序读取,那么只能自己写方法。
也就是说你可以先把所有的文件名字都读取出来,然后保存到一个数组中排序好。
然后写一个next 方法,定义一个当前文件的标志,也就是数组中的位置,来记录当前的是哪个文件,next方法中把路径和之前定义的标志+1即时下一个要查找的文件的路径,直接读取这个路径的文件就行了。
编程中不是所有方法都可以用API实现的,所以有时候要自己想法去做。使用API 但是也要创造API。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询