Tag: nsbundle

NSBundle pathForResource是NULL

我正在用xcode和objc创build一个简单的应用程序,我需要从一个文件加载一个NSDictionary,但我不能使用NSBundle获取文件的path: NSString *l = [[NSBundle mainBundle] pathForResource:@"LoginStatuses" ofType:@"plist"]; NSLog(@"%@", l); 当我运行这个代码时,我得到这个: 2010-10-16 10:42:42.42 Sample [5226:a0f](null) 我不知道为什么。 我创build了一个名为Resources的组,并在那里添加了LogingStatuses.plist:

使用 pathForResource:ofType:inDirectory访问文件:

我有一个名为TextFiles的文件夹中添加了一个TextFiles文件,这个文件夹位于Xcode的iOS项目的Resources文件夹中。 这是我用来访问文件的代码: NSString* filePath = [[NSBundle mainBundle] pathForResource:@"paylines" ofType:@"txt" inDirectory:@"TextFiles"]; NSLog(@"\n\nthe string %@",filePath); 代码打印: 2011-06-07 14:47:16.251 slots2[708:207] the string (null)

在xcodeunit testing中加载文件

我有一个xCode5unit testing项目和一些与之相关的testingxml文件。 我已经尝试了一堆方法,但我似乎无法加载XML文件。 我已经尝试了以下不起作用 NSData* nsData = [NSData dataWithContentsOfFile:@"TestResource/TestData.xml"]; NSString* fileString = [NSString stringWithContentsOfFile:@"TestData.xml" encoding:NSUTF8StringEncoding error:&error]; 另外,如果我尝试使用[NSBundle allBundles]预览所有的捆绑包,unit testing包不会出现在列表中? 我试图创build一个单独的资源包,我似乎无法编程find它,虽然它得到build立和部署。 我究竟做错了什么 ?

OCUnit和NSBundle

我创build了与“iPhone开发指南”一致的OCUnittesting。 这是我想要testing的课程: // myClass.h #import <Foundation/Foundation.h> #import <UIKit/UIKit.h> @interface myClass : NSObject { UIImage *image; } @property (readonly) UIImage *image; – (id)initWithIndex:(NSUInteger)aIndex; @end // myClass.m #import "myClass.m" @implementation myClass @synthesize image; – (id)init { return [self initWithIndex:0]; } – (id)initWithIndex:(NSUInteger)aIndex { if ((self = [super init])) { NSString *name = [[NSString alloc] initWithFormat:@"image_%i", aIndex]; NSString […]

如何确定应用程序包中是否存在文件?

对不起,今天哑号问题2。 是否有可能确定文件是否包含在应用程序包内? 我可以访问文件没有问题,即, NSString *pathAndFileName = [[NSBundle mainBundle] pathForResource:fileName ofType:@"plist"]; 但不能弄清楚如何检查文件是否存在那里。 问候 戴夫

NSURL用XCTest在testing包中loggingpath

我正在尝试使用TDD和新的XCTest框架编写iOS应用程序。 我的一个方法从互联网上检索一个文件(给定一个NSURL对象)并将其存储在用户的文档中。 该方法的签名类似于: – (void) fetchAndStoreImage:(NSURL *)imageUrl 我试图用这种方法编写testing,如果没有连接到互联网,它不会失败。 我的做法(从前面的问题中获得 )是使用NSURL调用本地文件系统中的映像的方法。 当创build一个unit testing启用的新项目时,Tests目录有一个名为“支持文件”的子目录。 我想这是我的testing图像应该去的地方。 我的问题是如何获得一个指向这个目录中的图像的NSURL对象,因为我不希望testing图像与应用程序捆绑在一起。 任何帮助表示赞赏。

核心数据在iPhone的静态库中

我已经构build了大量使用Core Data框架的静态库。 我可以成功地在我的外部项目中使用库,但只有在主项目中包含.xcdatamodel文件。 这并不理想,因为图书馆的目的是尽可能隐藏实施细节。 在另外一个问题中 ,我被告知,我不能将资源与一个图书馆捆绑在一起(这对我来说是完全有意义的)。 那么是否有一种方法可以在不需要将模型包含在主项目中的情况下以编程方式让模型“被发现”?

为什么unit testing内部的代码不能findbundle资源?

我unit testing的一些代码需要加载一个资源文件。 它包含以下行: NSString *path = [[NSBundle mainBundle] pathForResource:@"foo" ofType:@"txt"]; 在应用程序中它运行得很好,但是当由unit testing框架pathForResource:运行时pathForResource:返回nil,这意味着它找不到foo.txt 。 我已经确定foo.txt包含在unit testing目标的Copy Bundle Resources构build阶段,所以为什么找不到这个文件呢?

访问资产目录pathForResource

看起来: [[NSBundle mainBundle] pathForResource:@"name" ofType:@"png"]; 不会为Images.xcassets资产目录中的资产返回任何内容。 我也试过: [[NSBundle mainBundle] pathForResource:@"name" ofType:@"png" inDirectory:@"Images"]; [[NSBundle mainBundle] pathForResource:@"name" ofType:@"png" inDirectory:@"Images.xcassets"]; 但是这些都没有工作。 有没有人成功检索目录中资产的path?

在iOS上写一个文件

我如何在iOS上编写文件? 我试图用下面的代码来做,但我做错了什么: char *saves = "abcd"; NSData *data = [[NSData alloc] initWithBytes:saves length:4]; NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; NSString *appFile = [documentsDirectory stringByAppendingPathComponent:@"MyFile"]; [data writeToFile:appFile atomically:YES]; 我在资源上创build了MyFile.txt。