c++ - 使用 std::filesystem 替换文件

标签 c++ c++17 std-filesystem

常有规律

  1. 将输出写入临时文件(bla.txt.tmp)
  2. 删除原来的(rm bla.txt)
  3. 重命名一个新的(bla.txt.tmp -> bla.txt)

std::filesystem 中是否有任何实用函数可以执行此操作,或者我需要使用重命名和删除来一步步执行。

最佳答案

没有。标准库中没有这样的实用函数。虽然每个步骤都可以使用 std::filesystem 完成,但您可以自己编写这样的实用函数。

std::filesystem::rename 确实在一次调用中执行了步骤 2. 和 3.,但创建新文件必须单独完成。

关于c++ - 使用 std::filesystem 替换文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57926667/

相关文章:

c++ - 避免运行时多态性的性能问题

c++ - 函数调用如何给出编译时类型?

c++ - 将 C++ 类型信息保存到文件中以供跨程序调用使用

c++ - 使用 <filesystem> 检查目录是否存在

c++ - 如何在 C++17 中检索 std::filesystem::file_time_type 的时钟类型

c++ - 在 C++ 中使用具有参数的构造函数创建不同类型的对象

C++ 崩溃(编译器?)

c++ - C++ 中 *--end() 是什么意思?

c++ - 如何在数组QT C++中添加数据

c++ - 三字母仍然有效 C++ 吗?