【发布时间】:2020-04-29 17:16:22
【问题描述】:
我已经实现了以下函数,它获取文件的路径,然后尝试从文件系统中删除它。
该函数不能正常工作,因为当我调用它删除文件时,直到我关闭程序才会删除该文件。当我关闭程序时,我指定的文件将被删除。不知道代码有什么问题:
bool DeleteFileOnSystem(const char* arg_path, const char* arg_name_file)
{
char c_FilePath[MAX_PATH];
strcpy_s(c_FilePath, MAX_PATH, arg_path);
strcat(c_FilePath, arg_name_file);
if (DeleteFile(c_FilePath))
return true;
else
return false;
}
【问题讨论】:
-
“然后尝试删除它” - 事实上,这是一次尝试。 将在某个时候失败的尝试。 Windows 的内部字符编码是 UTF-16LE,其中包括文件 I/O API。您不能使用 ANSI 编码对每个 Unicode 代码点序列进行编码。此代码尝试执行的操作。