You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C++编程设置文件夹权限仍无法创建子目录,求解决方案

问题根源与解决办法

核心问题很明确:你修改的是当前工作目录的权限,但你要创建的/GraspData是在**系统根目录(/)**下——根目录的权限和当前工作目录完全是两回事,普通用户默认没有在根目录创建文件/文件夹的权限,所以改当前目录权限根本没用。

给你几个可行的解决方向:

  • 优先选:换创建路径到当前工作目录
    不要在根目录折腾,改成在当前程序运行的目录下创建子目录。把代码里的std::filesystem::create_directory("/GraspData");改成下面任意一种:

    • 直接用你定义好的变量:std::filesystem::create_directory(graspdatafolderpath);(前提是这个变量的值是相对路径,比如"./GraspData")
    • 硬写相对路径:std::filesystem::create_directory("./GraspData");
  • 非要在根目录创建?用管理员权限运行程序
    Linux/macOS下,在终端用sudo ./你的程序名启动;Windows右键程序,选择「以管理员身份运行」。但非常不推荐这么做,根目录是系统核心目录,随便加文件夹容易破坏系统结构。

  • 额外优化建议
    代码里已经定义了graspdatafolderpath变量,但最后创建时却硬写了"/GraspData",这种不一致的写法容易出问题,建议全程用变量管理路径。

内容的提问来源于stack exchange,提问作者Raphael10

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 03:36:01