各位高手,请教一下: 我现在做的系统,已经可以打开某个特定文件。现在我想枚举某类文件,如*.txt,然后对其中的某个文件进行操作。想问一下如何进行。375和库是否支持。要是有个例子就好了了。
你先枚举文件然后判断扩展名是TXT就可以了.
不太明白,可不可以多指点一下,我是35后学的C,可不可以给个例子?
UINT8 ListFile(UINT16 c) //列出本目录下第N个文件 { UINT8 code *pCodeStr; UINT8 i; pCodeStr = "/*"; i = mCopyCodeStringToIRAM( mCmdParam.Open.mPathName, pCodeStr ); /* 搜索文件名,*为通配符,适用于所有文件或者子目录 */ mCmdParam.Open.mPathName[ i ] = 0xFF; /* 根据字符串长度将结束符替换为搜索的序号,从0到254,如果是0xFF即255则说明搜索序号在CH375vFileSize变量中 */ CH375vFileSize = c; /* 指定搜索/枚举的序号 */ i = CH375FileOpen( ); /* 打开文件,如果文件名中含有通配符*,则为搜索文件而不打开 */ //if ( i == ERR_MISS_FILE ) ePutstr1("no file \n"); /* 再也搜索不到匹配的文件,已经没有匹配的文件名 */ if ( i == ERR_FOUND_NAME ) { /* 搜索到与通配符相匹配的文件名,文件名及其完整路径在命令缓冲区中 */ i=0; while(mCmdParam.Open.mPathName[i]!='.'){ if(mCmdParam.Open.mPathName[i]==0){i=0x0a;break;} /*遇到文件结束跳出*/ i++; if(i==0x0a)break; } if(i!=0x0a){ i++; if(mCmdParam.Open.mPathName[i]=='M'){ //判断是否MP3文件 i++; if(mCmdParam.Open.mPathName[i]=='P'){ i++; if(mCmdParam.Open.mPathName[i]=='3') ePutstr2(mCmdParam.Open.mPathName ); /* 显示序号和搜索到的匹配文件名或者子目录名 */ else return 1; } else return 1; } else return 1; } else return 1; } else { /* 出错 */ return i; } return 0; }
这是一个枚举.MP3的例子
这里有问题了 mCmdParam.Open.mPathName后面应该有[i[i]]的,为什麽贴上后就没了呢??
"["后面加一个空格就好了
mCmdParam.Open.mPathName[ i ]
感谢 usbxf { M }和 qing.y { F } 我在认真学习!
usbxf qing.y两位
我的好像编译通过不了“i= mCopyCodeStringToIRAM[XXXXXX] ”这句,可不可以指点一下。
mCopyCodeStringToIRAM 是自己写的COPY字符串的函数,这里没贴怎能看到