您的位置: 飞扬精品软件园 >> 文章中心 >> 系统教程 >> Mac 系统 >> Cocoa教学:使用应用程序资源

相关文章链接

本类文章排行

最新新闻资讯

    Cocoa教学:使用应用程序资源

    Cocoa教学:使用应用程序资源


    • 阅览次数: 文章来源: 网络 原文作者: 佚名 整理日期: 2010-02-28

      在大部分比较简单的程序里,资源的管理和使用都是无缝而且自动化的,你无需用程序去干预。

      但是如果你的程序趋于成熟,可能在某些情况下你就需要用代码去直接访问资源。直接访问程序中资源的方式也非常直接,下面我们就来介绍一下方法。

      神奇且自动

      你在XCode项目中加入Resources目录中的任何文件都会自动添加到你的应用程序中。你可以通过以下步骤进行验证:

      1 在XCode中编译程序。

      2 选中刚刚编译好的.app文件,通常会在build/Debug或者build/Release目录中。

      3 找到程序后,右键点击,选择“显示包内容”。

      4 打开Resources目录。

      5 你会发现你添加到XCode项目中的所有文件都放在这个目录中。

      那么现在问题来了,通过代码来最简单存取这些资源的方法是什么呢?很幸运,Cocoa让这件事情变得非常简单。


      读取属性列表模板

      我最近需要经常使用一个属性列表文件,做为模板来保存数据。你可能知道,NSDictionary提供了一种保存字典为属性列表的方法。那么既然我可以从模板中读取属性列表,在需要的情况下修改其中的一部分的话,我就没有理由必须用代码来从头建立一个字典。

      既然想到了这种办法,我就在程序的Resources目录中保存了一个属性列表的模板。我只需要从程序的包中读出这个文件,事情就做完了。下面就是我用来读取属性列表的代码:

      NSString *path = [[NSBundle mainBundle] pathForResource:@"OutputTemplate"ofType:@"plist"];

      NSMutableDictionary *templateDictionary = [NSMutableDictionarydictionaryWithContentsOfFile:path];

      NSLog(@"Dictionary was: %@", templateDictionary);

      注意我们需要读取的文件名是OutputTemplate.plist.

      这样一来我就可以修改NSMutableDictionary的键和值来满足我们的需求了。修改之后,可以用下面的代码直接写到文件中:

      [templateDictionary writeToFile:outputPath atomically:YES];

      结论

      你可以用这种方法读取你喜欢的任何文件类型。只要把你想读取的文件加入到Resources目录即可。


查看所有评论

网友对Cocoa教学:使用应用程序资源的评论

网名:
主题:
内容:
验证码: