为什么没有boost :: filesystem :: move_file?

mol*_*olm 17 c++ file-io boost-filesystem

我正在使用boost文件系统来替换像CopyFile和MoveFile这样的Windows C++函数,以便在windows和linux之间获得某种可移植性.我正在使用copy_file,但我无法找到任何移动文件,如'move_file'函数.boost有移动文件功能吗?

我非常希望使用boost,但欢迎提供其他建议.

Phi*_*ipp 34

它被称为rename,请参阅手册.与相应的OS功能一样,如果源路径和目标路径位于不同的文件系统上,则这可能会也可能不起作用.如果它不起作用,请使用复制操作,然后执行删除操作.

  • 我承认阅读手册然后依次阅读手册中提到的ISO C页面,我没有看到任何明确说明目标可以是另一个目录中的文件以便将文件从一个目录移动到另一个目录.仔细阅读意味着这是可能的,但我认为如果明确说明这种可能性,那么增强文档会更有用,更清晰.提升文档票证:https://svn.boost.org/trac/boost/ticket/9643 (4认同)
  • 移动(如 Linux 下的 mv)可以跨不同的文件系统工作,而重命名则不能。 (2认同)