neu*_*242 4 c macos file-io core-foundation
我想通过将文本转储到文件来调试我的应用程序中的一些东西,如下所示:
FILE *file;
file = fopen("/tmp/file.txt","a+");
fprintf(file,"%s\n", "silly debug message");
fclose(file);
Run Code Online (Sandbox Code Playgroud)
当我将文件作为./myapplication运行时,这是有效的.但是,当我将其捆绑为应用程序包(使用gtk-osx-application和gtk-mac-bundler)并运行应用程序包时,不会创建该文件.它无声地失败并继续执行.
有什么想法吗?是否有沙盒正在进行?
是的,您的应用程序包是沙箱,因此您无法写入文件系统中的任意位置(如/tmp
).要访问特定于您的应用的临时目录,请使用NSTemporaryDirectory ;
import <NSPathUtilities.h>
NSString* tempPath = NSTemporaryDirectory();
Run Code Online (Sandbox Code Playgroud)
在此处查看有关文件系统访问的更多信息.
归档时间: |
|
查看次数: |
682 次 |
最近记录: |