Objective C中的嵌入式资源?

时间:2010-08-03 19:14:01

标签: objective-c embedded-resource

我在C#和Java中都有一个库,它使用一些XML文件来生成很多对象。我使用它们,所以我不必用两种语言对它进行硬编码,并且可以轻松更新数据。

在C#和Java中,我都可以将这些文件嵌入到DLL / Package中。

如何在Objective-C中继续做这样的事情?

1 个答案:

答案 0 :(得分:6)

这不是一个语言级别的问题,它是一个平台打包级别的问题。在Mac OS X和iOS上,通常您将资源文件添加到项目中,然后从NSBundle获取文件的路径:

NSString *path = [[NSBundle mainBundle] pathForResource:@"file" ofType:@"xml"];

Objective-C中的库称为框架。与应用程序一样,它们也是Mac OS X上的捆绑包,而不是mainBundle您可能希望使用bundleForClass:

iOS不支持框架,只支持静态库,因此您无法将资源文件包含在该平台上的库中。必须将它们直接添加到项目中。