gpt4 book ai didi

c++ - Boost.Filesystem 中的 MAX_PATH 限制

转载 作者:可可西里 更新时间:2023-11-01 15:27:23 26 4
gpt4 key购买 nike

我想使用 Boost.Filesystem 库来操作路径、文件和目录。我的问题是是否支持长于 MAX_PATH 的路径?

我知道在 Win32API 中我们有解决方法“\\?\”,但它不受 PathAppend 和 PathCombine 等基本函数的支持。

所以我正在寻找有关 MAX_PATH 和 Boost.FS 的任何有用信息。

谢谢

UPD:我关心所有操作,如路径追加、路径合并等(我在 Win32API 中有这些函数,但它们不适用于比 MAX_PATH 长的路径)例如 CreateFileW 和 DeleteFileW 都支持比 MAX_PATH 长的路径。可能 Boost.FS 可以替代 Win32API 实用程序函数,例如 shlwapi 和 shell32 中通常不支持长路径的函数

最佳答案

事实是Windows支持任意长度的路径,任意路径在windows上都可以转为字符串。在这种情况下需要添加 \\?\,但这是“从给定路径生成字符串”操作的一部分。

据我所知,Boost::FileSystem 在 Windows 上做错了。

我不知道是否计划修复。参见 this关于应该如何完成。

关于c++ - Boost.Filesystem 中的 MAX_PATH 限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4606295/

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