我想创建一个包含“:”、“-”等字符的文件名。 我尝试了以下代码将日期和时间附加到我的文件名。
Str.Format(_T("%d-%d-%d-%d:%d:%d.log"),systemTime.wDay ,systemTime.wMonth ,systemTime.wYear,systemTime.wHour,systemTime.wMinute,systemTime.wSecond);
std::wstring NewName=filename.c_str() + Str;
MoveFileEx(oldFilename.c_str(), NewName.c_str(), 2 )
MoveFileEx 失败,Windows ErrorCode 123(ERROR_INVALID_NAME)。所以我认为问题出在我的新文件名上,其中包含“:”和“-”
谢谢,
最佳答案
确实,您不能在 Windows 文件名中使用 :
字符。用别的东西代替它。如果程序依赖于名称,则修改它以解释替代定界符。
关于c++ - 带有额外 ":"或 "-"c++ 的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15611057/