在 Obj-C 中打开 jpg 文件



我无法从文档目录中打开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 文件。

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

    NSString *filename = [documentsDirectory stringByAppendingPathComponent:address];

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

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

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]];

(仅在真实设备上进行了测试!

最新更新