/* 从目录中读取一个文件名
输入参数
dir 文件全名
lenOfDir 文件全名的长度
输出参数
fileName 读出的文件名(不带文件类型)
返回值:
>=0 文件名的长度
<0 出错代码
*/
int ReadFileNameFromFullDir(char *dir,int lenOfDir,char *fileName)
{
char tmpBuf[512];
char *ptr;
int len;
if ((dir == NULL) || (lenOfDir < 0) || (fileName == NULL)) //输入值都是非空值
return(-1);
ptr = dir;
loop:
if (ptr >= dir + lenOfDir)
return(0);
strcpy(tmpBuf,ptr);
if ((ptr = strstr(ptr,"/")) == NULL) // 已不是目录
{
for (len = strlen(tmpBuf); len > 0; len--)
{
if (tmpBuf[len-1] == '.') //去除文件类型
{
tmpBuf[len-1] = 0;
break;
}
}
strcpy(fileName,tmpBuf);
return(len);
}
ptr += 1;
goto loop;
}
调用:ReadFileNameFromFullDir("/XXX/XX/XX/XX/XX/123.txt", strlen("/XXX/XX/XX/XX/XX/123.txt"), fileName);
结果:fileName = [123]
阅读(770) | 评论(0) | 转发(0) |