在Obj-C中打开jpg文件

时间:2014-01-09 08:24:36

标签: ios objective-c

我无法从文档目录中打开jpg文件。文件存在,而不是零,但是当我尝试将其打开到UIImageView时 - 没有任何反应。有人能帮助我吗?

示例代码:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
                                                         NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filename = [documentsDirectory stringByAppendingString:address];
UIImage *img =[[UIImage alloc] initWithContentsOfFile: filename];
[imgView setImage:img];

更新 此代码与png文件完美配合。

2 个答案:

答案 0 :(得分:0)

  1. 修改文件路径时不要使用-[NSString stringByAppendingString:]。而是-[NSString stringByAppendingPathComponent:]

    NSString *filename = [documentsDirectory stringByAppendingPathComponent:address];

  2. 调试并检查文件名(NSString *)address和文件路径(NSString *)filename是否正确。

答案 1 :(得分:0)

你的问题是路径不正确。这是你错误的路径:

var/mobile/Applications/<ID>/Documents2014-01-09--10:25:03.jpg

那将是正确的路径:

var/mobile/Applications/<ID>/Documents/2014-01-09--10:25:03.jpg

(找出文件夹和文件名之间缺少的斜杠);


试试这个:

NSURL *_resourceURL = [[[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject] URLByAppendingPathComponent:@"2014-01-09--10:25:03.jpg"];
UIImage *_image = [[UIImage alloc] initWithContentsOfFile:[_resourceURL path]];

(它仅在真正的设备上测试过!)