我之前在Xcode中创建了很多应用程序,并且它们的默认工作目录始终是.app文件所在的目录,因此我访问了内容数据,如Whatever.app/Contents/Resources.我知道这可能不是正确的方法,但它始终有效.无论如何,无论是从最近的Xcode更新还是出于其他原因,他们的默认工作文件夹现在都被设置为"/".这只发生在我从Finder运行.app文件时.如果我在Xcode中运行它,文件夹路径是正确的(我可以在可执行选项中设置该路径,但它对直接运行.app时发生的情况没有影响).这是某个地方还是新标准?
小智 7
对于资源,使用这个很酷的代码:
NSString *path = [[NSBundle mainBundle] pathForResource:@"awesomepic" ofType:@"png"];
Run Code Online (Sandbox Code Playgroud)
你永远不应该依赖PWD与Cocoa.相反,尽可能使用Cocoa API.只有Apple没有提供其他方法时才应使用BSD API.
static char *appdir;
Run Code Online (Sandbox Code Playgroud)
#import "globheader.h"
@implementation AppController
- (void)method {
appdir = [[[NSBundle mainBundle] bundlePath] UTF8String];
}
@end
Run Code Online (Sandbox Code Playgroud)
#include "globheader.h"
int main() {
printf("%s", appdir);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5029 次 |
| 最近记录: |