c++ - 使用 std::filesystem 替换文件
问题描述
经常有一个模式
- 将输出写入临时文件(bla.txt.tmp)
- 删除原始文件(rm bla.txt)
- 重命名一个新的(bla.txt.tmp -> bla.txt)
std::filesystem 中是否有任何实用程序函数可以执行此操作,或者我需要使用重命名和删除来逐个执行步骤。
解决方案
不,标准库中没有这样的实用功能。不过,每个步骤都可以完成,std::filesystem
您可以自己编写这样的实用函数。
std::filesystem::rename
确实在一次调用中执行了第 2 步和第 3 步,但必须单独创建新文件。
推荐阅读
- c++ - 为什么数组中对象的析构函数在被另一个对象替换时不被调用?
- php - PHP - 获取不大于下一个数组值的数组值
- c# - WPF子菜单覆盖而不是展开
- groovy - 使用 groovy 脚本的 Jenkins 管道:执行 sh 命令时出错
- r - 为什么 R 中的扩展函数将 NA 添加到我的分组和汇总数据框中?
- android - 对特征/描述符寻址和 UUID 感到困惑
- reactjs - 世博会相机参考未被识别
- epplus - EPPlus 条件格式“AddExpression”问题
- c++ - Lambda 自身返回:这合法吗?
- vsto - 如果选中功能区复选框,如何在发送时更改主题行