objective-c – 从Objective C中的NSBundle获取图像路径?

栏目: Objective-C · 发布时间: 7年前

内容简介:翻译自:https://stackoverflow.com/questions/4044376/get-image-paths-from-nsbundle-in-objective-c

我想在Core Data中存储大约60张图像,其中30张是头像,前缀为avt_filename_00X.png,其中30张较小且前缀不同.

我没有将所有图像存储为Core Data / SQLite中的BLOB,而是希望存储找到的每个图像的路径(与存储 MySQL 数据库的图像路径的方式相同).

但是我不知道如何获取NSBundle中的图像路径.

我可以通过以下方式获取NSDocumentDirectory的路径:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];

NSFileManager *fileManager = [NSFileManager defaultManager];
[fileManager fileExistsAtPath:documentsDirectory];

NSLog(@"documentsDirectory = %@", documentsDirectory);

我可以加载图像并将其添加到数组中.

if (qty == 0)
{
    //NSLog(@"fileToLoad = %@", fileToLoad);

    UIImage *img = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:fileToLoad ofType:fileExt]];

    [self.avtList addObject:img];

    [img release];

} else {

    // load multiple image into an array
    // not coded yet
}

但是,我不确定的是:

>如何获取计算机在NSBundle内部找到图像的路径?

>当应用程序在设备上时,如何确定路径是否有效?

我们的想法是将所有图像存储在一个数组中,然后将它们推送到Core Data / SQLite.

获取主包中资源的完整路径的正确方法是:

[[NSBundle mainBundle] pathForResource:@"avt_filename_00X" ofType:@"png"]

(或者,如果您希望在资源名称中包含扩展名,则可以为’ofType’提供空字符串)

但是在文档中没有任何地方保证在设备,操作系统迭代等之间保持相同的路径.它是当前环境中应用程序包中该文件的路径,保证在此应用程序运行期间保持有效.只要.

因为应用程序的路径以及它的资源不能保证保持不变,所以我认为以任何方式将它放在 SQL 数据库中显然是不安全的.

您是否可以采用一种方案,其中以/开头的文件名是完整路径,假设在开头没有/的文件在包中,这意味着您可以在数据库外部应用逻辑?

翻译自:https://stackoverflow.com/questions/4044376/get-image-paths-from-nsbundle-in-objective-c


以上所述就是小编给大家介绍的《objective-c – 从Objective C中的NSBundle获取图像路径?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Flask Web开发:基于Python的Web应用开发实战

Flask Web开发:基于Python的Web应用开发实战

[美] Miguel Grinberg / 安道 / 人民邮电出版社 / 2014-12 / 59.00元

本书不仅适合初级Web开发人员学习阅读,更是Python程序员用来学习高级Web开发技术的优秀参考书。 • 学习Flask应用的基本结构,编写示例应用; • 使用必备的组件,包括模板、数据库、Web表单和电子邮件支持; • 使用包和模块构建可伸缩的大型应用; • 实现用户认证、角色和个人资料; • 在博客网站中重用模板、分页显示列表以及使用富文本; • 使用基于......一起来看看 《Flask Web开发:基于Python的Web应用开发实战》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具