为什么[fopen()/ open()/ fstream文件]在Mac OS X上无法打开文件?

时间:2014-02-19 13:35:55

标签: c++ c macos file

我正在尝试在Mac OS X上打开一个tga文件,我花了几个小时来解决这个问题,没有运气。 我只是想打开一个tga文件。 这是我到目前为止所尝试的,

    int filedesc = open("/Users/x2am/Desktop/1177.tga", O_RDONLY);
    if(filedesc < 0)
            printf("%s ",strerror(errno));

输出&GT;不允许操作

    FILE* fp = fopen("/Users/x2am/Desktop/1177.tga", "rb");
    if(fp == NULL) printf("file not loaded");

输出&GT;文件未加载

   filename = L"/Users/x2am/Desktop/1177.tga";
   std::string narrow(filename.begin(), filename.end());
   fstream file(narrow.c_str(), ios::in | ios::binary);
   if (!file.good()) printf("file not loaded");

输出&GT;文件未加载

考虑open()的输出,不知道该操作是不允许的。

以下是我在图片上执行的获取信息。

enter image description here

该应用是沙盒, enter image description here

现在我想我已尽力而为。在我面前隐藏着一些我不知道的东西吗?任何帮助非常感谢:)

1 个答案:

答案 0 :(得分:2)

问题确实是因为苹果沙盒。 这再次提出了问题,苹果沙箱:朋友还是敌人? 将文件放入/Users/USER/Library/Container/com.xxx.xxx/Data/之后就可以了。 非常感谢@SHR,对于ans:)