Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c NSImage-can';无法从文件中加载图像_Objective C_Cocoa_Command Line_Nsimage - Fatal编程技术网

Objective c NSImage-can';无法从文件中加载图像

Objective c NSImage-can';无法从文件中加载图像,objective-c,cocoa,command-line,nsimage,Objective C,Cocoa,Command Line,Nsimage,我编写了一个命令行应用程序,它将从支持文件加载图像。图像被复制到支持文件中,但当我使用以下代码时,变量imgC返回nil NSString* pathC = @"galaxy.jpg"; NSImage* imgC = [NSImage imageNamed: pathC]; ImgC返回nil,即使我使用以下代码: NSString* pathC = @"galaxy.jpg"; NSImage* imgC = [[NSImage alloc] initWithContentsOfFile:

我编写了一个命令行应用程序,它将从支持文件加载图像。图像被复制到支持文件中,但当我使用以下代码时,变量imgC返回nil

NSString* pathC = @"galaxy.jpg";
NSImage* imgC = [NSImage imageNamed: pathC];
ImgC返回nil,即使我使用以下代码:

NSString* pathC = @"galaxy.jpg";
NSImage* imgC = [[NSImage alloc] initWithContentsOfFile: pathC];
有人能帮我吗

(附言:很抱歉我的英语不好。)


非常感谢,Peter

因为目标是
推荐行工具
,因为这些工具没有捆绑包
[NSBundle mainBundle]
,所以它返回
nil
。因此,您需要使用
绝对路径
,而不是
相对路径
。由于这是奇怪的
Xcode
,因此不要显示任何与此相关的警告

NSImage *image = [[NSImage alloc]initWithContentsOfFile:@"/Users/Zenga/Documents/iOS/Research/Test/star.png"];
if (image == nil) {
    NSLog(@"image nil");
}
NSLog(@"%f and %f",image.size.width, image.size.height);
当我点击图片时,我找到了这条路径,在右上角我找到了这条路径,我使用了它,对我来说效果很好

雨燕风格:

if let imageRef = NSImage(byReferencingFile: "/path/to/galaxy.jpg")
{
    println("image size \(imageRef.size.width):\(imageRef.size.height)")
}

您确定要将映像复制到您的包中吗?是。我在Xcode中的支持文件以及Finder中的项目文件夹中看到了图像。
imageNamed:
方法只能在应用程序包中使用,不能从命令行工具中使用。和
initWithContentsOfFile:
应与绝对路径而不是相对路径一起使用。也。。。您应该使用URL而不是路径。@是的,但奇怪的是
Xcode
没有显示任何警告