请问在应用程序中如何删除某个特定的文件?

中文QNX 讨论: 欢迎大家灌水,讨论有关QNX 问题。
回复
vansharp
Senior Member
帖子: 49
注册时间: 周五 1月 16, 2009 10:40 am

请问在应用程序中如何删除某个特定的文件?

帖子 vansharp » 周二 11月 09, 2010 9:08 am

问个比较低级的问题哦 :oops:
在应用程序中是这么处理的:
char chszfilePath[256];
memset(chszfilePath, 0 , sizeof(chszfilePath));
sprintf(chszfilePath, "/project/mb%d.dat", i);
if ( -1 == spawnl( P_WAIT, "/bin/rm", "/bin/rm", "-f", chszfilePath, NULL ) )
{
fprintf(stdout,"spawnl return status %s.\r\n", strerror(errno));
}

返回的结果是:spawnl return status no child processes.
麻烦各位帮看看吧,是参数chszfilepath有问题吗?确认过chszfilePath里是fullpath呀,而且文件也是存在的,用命令行
rm -f /project/mbxx.dat成功的。

xtang
Moderator
帖子: 1816
注册时间: 周五 9月 12, 2003 4:14 am
来自: China

帖子 xtang » 周三 11月 10, 2010 9:46 pm

不是有remove()函数?为什么要这么复杂?:)

vansharp
Senior Member
帖子: 49
注册时间: 周五 1月 16, 2009 10:40 am

帖子 vansharp » 周五 11月 12, 2010 5:29 pm

:oops: :( 汗,我错了。不过针对上面这个问题是chszFilePath的问题,用
sprintf(chszfilePath, "//project//mb%d.dat", i);就成功删除文件了。

回复