ios 文件夹:蓝色和黄色 读取图片和读取JSON文件

问题:
 NSBundle *bundle = [NSBundle mainBundle];
    NSString *resourcePath = [bundle resourcePath];
    NSString *filePath = [resourcePath stringByAppendingPathComponent:@"cover.jpg"]; //rainbow.png
    NSData *data = [NSData dataWithContentsOfFile:filePath];
    
    UIImage *image = [UIImage imageWithData:data];
 UIImage *image = [UIImage imageWithContentsOfFile:filePath];
 
蓝色文件下的 image 为nil
 
黄色文件夹下 image 有数据,与是否是jpg还是png无关
 

解决方法如下:

Xcode创建的iOS项目内存在两种文件夹:Group(黄色, 伪文件夹) 和Folder(蓝色, 真文件夹):

Group:

Folder:

Images.xcassets或Group文件夹内的PNG图片可通过imageNamed方法直接加载:

[UIImage imageNamed:@"photo"];

Folder文件夹内的PNG图片通过imageNamed方法加载必须拼接文件夹路径, 否则图片无法显示:

[UIImage imageNamed:@"Folder/imageName"];

问题:如何读取蓝色文件夹里面的JSON文件
方法:

    NSString *filePath = [[NSBundle mainBundle] pathForResource:@"205e40b643e1162ebf5789194dae6baf/target" ofType:@"json"];
    NSData *jsonData = [[NSData alloc] initWithContentsOfFile:filePath];
    NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
    NSString *retStr = [[NSString alloc] initWithData:jsonData encoding:enc];
 原因:
205e40b643e1162ebf5789194dae6baf/ 是真实的文件夹,所以要拼接
posted on 2016-09-09 14:30  菜鸟onTheLoad  阅读(497)  评论(0编辑  收藏  举报