gpt4 book ai didi

c++ - 在 Linux 中使用 C++ 跨卷 move 文件

转载 作者:太空狗 更新时间:2023-10-29 12:36:13 26 4
gpt4 key购买 nike

我正在尝试编写一些可以在所有平台上跨卷 move 文件的东西。目前,我使用 rename(...) 函数来 move 文件,即使在 Windows 上跨卷/驱动器也是如此。但是,在 Linux 上,我收到一个 EXDEV 错误(通过 strace),导致我的应用程序终止 :(

看来我可能需要通过 system(...) 调用“mv”,但这看起来很老套。那个,或者将 boost 集成到我的应用程序中,这不是一个微不足道的操作。

我还有其他选择吗?

感谢您的宝贵时间。

最佳答案

如果你想写一些需要跨平台的东西而不依赖于特定系统的实现——你必须坚持标准。虽然较新的 C++11 标准可能允许额外的功能来帮助您实现这一点,但一个简单的解决方案是只实现从一个 fstream 到另一个的普通拷贝。

关于c++ - 在 Linux 中使用 C++ 跨卷 move 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10745849/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com