c++ - 文件系统错误:无法复制:文件存在
问题描述
我在文件夹 A 中有一个 .txt 文件,我正在尝试使用此代码将其复制到文件夹 B,
#include <iostream>
#include <filesystem>
int main() {
try {
std::filesystem::path src("C:\\Projects\\test.txt")
std::filesystem::path dst("C:\\Projects\\Notes");
std::filesystem::copy(src, dst, std::filesystem::copy_options::overwrite_existing);
} catch (const std::exception &e)
{
std::cout << e.what() << "\n";
}
}
代码可以编译,但是当我运行它时会输出错误。
filesystem error: cannot copy: File exists
[C:\Projects\test.txt] [C:\Projects\Notes]
我对文件系统的使用不正确吗?这是MinGW的错误吗?
MinGW-w64 9.0.0
GCC Version 11.1
MinGW 取自http://winlibs.com/
我的操作系统是 Windows 10
解决方案
原来我必须给出文件名,它不会像高级语言那样自动将文件复制到文件夹中。
所以,
std::filesystem::path dst("C:\\Projects\\Notes");
变成
std::filesystem::path dst("C:\\Projects\\Notes\test.txt");
推荐阅读
- python-3.x - 如何从 Wappalyzer 隐藏 Python 和 Django 技术
- google-chrome - 如何通过谷歌浏览器从网站下载音频
- excel - VBA Excel 2019:打开时为所有用户关闭工作簿的超链接
- r - 在 R 中写一个函数
- postgresql - 如何在 PostgreSQL 触发器中访问 Hasura session_variables
- c# - 尝试将 Neo4j 与 ASP.NET Core 连接
- xcode - curl 命令的语法不清楚
- php - 在 PHP Laravel 中添加多张单场比赛门票
- dataframe - 无法过滤从箭头表创建的 DataFrame
- function - Netlogo 中的功能