重命名不同路径中的文件

Posted

技术标签:

【中文标题】重命名不同路径中的文件【英文标题】:Renaming a File in a different path 【发布时间】:2010-12-06 10:34:22 【问题描述】:

我尝试使用以下语法重命名一个文件:

int iRenameXML,iRenameXMLErr;
iRenameXML = rename("D:\Debug\CurrentServers.xml",
                             "D:\Debug\CurrentServersssss.xml");
iRenameXMLErr = GetLastError();

但这让我GLE 2 ,ERROR_FILE_NOT_FOUND。

有没有其他方法可以更改其他位置的文件名。

我认为 chdir 不是一个好主意。

【问题讨论】:

【参考方案1】:

您需要在 \ 中添加双反斜杠

int iRenameXML,iRenameXMLErr;
iRenameXML = rename("D:\\Debug\\CurrentServers.xml",
                             "D:\\Debug\\CurrentServersssss.xml");
iRenameXMLErr = GetLastError();

【讨论】:

谢谢。忘记转义序列:) 我不想这样做 agn @Subhen 不客气。从 C# 回到 C++ 时我也忘记了,在 C# 中我可以做 @"D:\Debug\CurrentServers.xml" 而不用担心转义序列!【参考方案2】:

在C++ FAQ Lite 中查看"[15.16] Why can't I open a file in a different directory such as "..\test.dat"?"。

【讨论】:

以上是关于重命名不同路径中的文件的主要内容,如果未能解决你的问题,请参考以下文章