文件枚举的问题求助。

问题一:除了枚举目录中的所有文件来确认相关类型文件(比如mp3后缀名文件)数量,还有什么更简单的办法?

问题二:对相同的通配符,枚举过程,文件出现的顺序是一样的吗? 我的情况是目录下文件会达到99个,没有足够的空间保存所有文件名。

谢谢先。

1,没有什么好的办法,不过你可以采用枚举回调的函数,来加快枚举速度。 2,对于相同的通配符,在同一个U盘下面,只要文件不做改动,顺序是一样的,实际在操作的时候,建议你去看下我们的MCS51下面的EXAM13,还有就是你可以枚举一个操作一个,但是速度上面可能有点慢,但是会节省RAM空间。


枚举到的文件就是当前打开的文件吗?可以直接读数据吗?


是的,可以读取文件


继续枚举前,当前的文件不需要关闭吗?


我首先打开两层目录,

然后用文件名打开文件可以播放mp3

但是用枚举,观察到跳过第一第二个枚举文件后,转去播放,但是直接就跳出了没有数据读出,不知道要怎么操作才能打开文件读数据?


还有个问题,长文件名不能枚举到吗? 我的意思是有对应的短文件名能枚举到吗?


我用windows里面 dir /x 列出的短文件名来打开文件,不成功。

枚举似乎也只循环了三次,我的目录文件如下 -rwxr-xr-x 1 sh root 7407224 2009-01-06 2 CD Track 03.mp3 -rwxr-xr-x 1 sh root 7009427 2009-01-06 3 CD Track 04.mp3 -rwxr-xr-x 1 sh root 7552211 2009-01-06 4 CD Track 05.mp3 -rwxr-xr-x 1 sh root 6378851 2009-01-06 5 CD Track 06.mp3 -rwxr-xr-x 1 sh root 4916501 2009-01-06 6 CD Track 07.mp3 -rwxr-xr-x 1 sh root 5854389 2009-01-06 Track01.mp3


你采用枚举的话,一般在目录下面第一个文件为“.”,第二个文件为“..”,到第三个文件才是这个文件夹下面的真正文件,每次枚举的时候都返回这个文件的完整的路径,然后判断后缀是否为“MP3”,如果是的话则打开文件,读取文件内容进行播放,如果不是的话,把枚举序号加一进行枚举下一个文件。同时我们也是可以获取到文件的长文件名的,您如果需要获取长文件名的例子的话,您可以E-MAIL:fqb@wch.cn,我们可以提供一个获取长文件名的例子


判断后缀是否为“MP3”,如果是的话则打开文件,读取文件内容进行播放,如果不是的话,把枚举序号加一进行枚举下一个文件

打开文件是指 重新设置文件名为枚举到的文件的文件名CMD_SET_FILE_NAME,然后打开文件CMD_FILE_OPEN? 还是直接打开文件CMD_FILE_OPEN?

每次枚举的时候都返回这个文件的完整的路径 有目录信息?

个人信息保护,已隐藏 谢谢


你使用的是什么芯片,CH376吗?还是CH375芯片?


CH376


操作方式是一样的,在你枚举到文件之后在打开文件就可以了。


枚举目录中的文件数量正常,就是如何在枚举过程中一次打开访问数据。

或则我现在考虑的是每次枚举找到对应的文件,取得对应的文件名,然后设置文件名,然后打开,然后读数据。

刚才实验过了,可行。这个枚举没有打开对应的文件。

还有更简便的方法吗?


谢谢楼上的几位大虾。


只有登录才能回复,可以选择微信账号登录