开发环境:env,RT_Thread
1,创建文件1.txt,12.txt,123.txt
2,执行查找文件函数seekfile_sample
如图,找到文件1.txt,没有找到2.txt,找到12.txt
3,函数seekfille_sample的源代码如下
/ 假设文件操作是在一个线程中完成 /
static int seekfile_sample(int argc, char* argv)
{
DIR dirp;
struct dirent d;
char flag;
if (argc != 2)
{
printf(“please input the filename : seekfile_sample file_name
“);
return 0;
}
/ 打开当前目录/
dirp = opendir(“/“);
if (dirp == RT_NULL)
{
rt_kprintf(“open directory error!
“);
return 0;
}
else
{
flag = 0;
/ 在这儿进行读取目录相关操作/
while ((d = readdir(dirp)) != RT_NULL)
{
// rt_kprintf(“%s
“, d -> d_name);
if ( !strcmp(argv[1], d -> d_name))
{
rt_kprintf(“found %s
“, d -> d_name);
flag = 1;
}
}
if(flag == 0)
{
rt_kprintf(“file does not found
“);
}
/ 关闭目录 /
closedir(dirp);
}
return 0;
}
/ 导出到 msh 命令列表中 */
MSH_CMD_EXPORT(seekfile_sample, seekfile sample);