用在C++中加dos命令删除文件 出现“另一个程序正在使用此文件,进程无法访问。”

时间:2022-09-02 18:36:03
D:\Backup\我的文档\程序\test
另一个程序正在使用此文件,进程无法访问。
什么原因呢?
怎么文件删除不了~
我没运行程序时,并没有打开test文件~而直接用cmd时,却可以删除

6 个解决方案

#1


一般是肯定是该文件被打开,或者被占用,才会出现文件删除不了。

#2


到底是哪个文件?你的C++程序和这个文件有什么关系?程序代码又和这个文件有什么关系?

#3


FILE *fp;
if ( (fp = fopen(name,"r")) == NULL)
{
cout << "错误!不能删除文件或不存在该好友!\n";
cout << "按任意键返回主菜单。\n";
    cin.get();
    menu();
}

受这段代码影响吗?

#4


可能,fclose 了没有?

#5


void del_Friend()
{
char name[20];
//int temp;
cout << "\n请输入要删除的好友姓名:";
fflush(stdin);
cin.getline(name,20);
    //strcat (name,"data");
FILE *fp;
if ( (fp = fopen(name,"r")) == NULL)
{
cout << "错误!不能删除文件或不存在该好友!\n";
cout << "按任意键返回主菜单。\n";
    cin.get();
    menu();
}
else
{
del_File(name);
/*cout << "删除成功!按任意键返回主菜单。\n";
cin.get();
menu();*/
}
}
void del_File(char name[])
{
char DEL[30] = "del ";
strcat (DEL,name);
system(DEL);
cout << "删除成功!按任意键返回主菜单。\n";
cin.get();
menu();
}

把代码发上来~~会不会清楚点

#6


thx~~忘了fclose了~~粗心

#1


一般是肯定是该文件被打开,或者被占用,才会出现文件删除不了。

#2


到底是哪个文件?你的C++程序和这个文件有什么关系?程序代码又和这个文件有什么关系?

#3


FILE *fp;
if ( (fp = fopen(name,"r")) == NULL)
{
cout << "错误!不能删除文件或不存在该好友!\n";
cout << "按任意键返回主菜单。\n";
    cin.get();
    menu();
}

受这段代码影响吗?

#4


可能,fclose 了没有?

#5


void del_Friend()
{
char name[20];
//int temp;
cout << "\n请输入要删除的好友姓名:";
fflush(stdin);
cin.getline(name,20);
    //strcat (name,"data");
FILE *fp;
if ( (fp = fopen(name,"r")) == NULL)
{
cout << "错误!不能删除文件或不存在该好友!\n";
cout << "按任意键返回主菜单。\n";
    cin.get();
    menu();
}
else
{
del_File(name);
/*cout << "删除成功!按任意键返回主菜单。\n";
cin.get();
menu();*/
}
}
void del_File(char name[])
{
char DEL[30] = "del ";
strcat (DEL,name);
system(DEL);
cout << "删除成功!按任意键返回主菜单。\n";
cin.get();
menu();
}

把代码发上来~~会不会清楚点

#6


thx~~忘了fclose了~~粗心