注册 登录
编程论坛 C++教室

调用DeleteFile()函数删除文件却删除不了。

r316999443 发布于 2015-12-06 20:37, 993 次点击
int findfile(string PFile2)
{
   ifstream ifs(PFile2.c_str());
    //cout<<PFile.c_str();
    if(!ifs)
    {
        cout<<"未发现文件!\n";
        return 0;
    }
    else
    {
        cout<<"发现文件!\n";        
        if(DeleteFile(PFile2.c_str())==0)
        {
            cout<<"删除失败";
        }
        //cout<<PFile2.c_str();
        return 1;
    }

}
DeleteFile()返回值为0,头大了!

[此贴子已经被作者于2015-12-6 20:53编辑过]

2 回复
#2
r3169994432015-12-06 21:29
找到问题了ifs.close(); 要把文件先关闭再删除


int findfile(string PFile2)
{
   ifstream ifs(PFile2.c_str());
    //cout<<PFile.c_str();
    ifs.close();
    if(!ifs)
    {
        cout<<"未发现文件!\n";
        return 0;
    }
    else
    {
        cout<<"发现文件!\n";        
        if(DeleteFile(PFile2.c_str())==0)
        {
            cout<<"删除失败";
        }
        //cout<<PFile2.c_str();
        return 1;
    }

}
DeleteFile()返回值为0,头大了!
#3
诸葛欧阳2015-12-06 23:41
要先关闭流
1