从Zip存档中提取图像

卢卡斯·穆索

我的出发点:

我从一个zip压缩文件中获取了一些压缩图像。我想以幻灯片形式显示图片。

问题:

Data成功下载zip归档文件URLSession.shared.dataTask并用解压缩后let decompressedData = try (data as NSData) .decompressed (using: .zlib),我再也没有得到任何帮助。

我知道我可以UIImage(data: data)用来显示数据图像。

但是,如何从解压缩的数据中获取图像的单个数据?

谢谢你,卢卡斯

PS:如果我没有清楚解释,或者您需要更多详细信息,请询问

卢卡斯·穆索

没关系,我自己找到了解决方案:

guard let archive = Archive(data: data, accessMode: .read) else {
    return
}

for entry in archive {
    
    var extractedData: Data = Data([])
    
    do {
        _ = try archive.extract(entry) { extractedData.append($0) }
        
        if let image = UIImage(data: extractedData) {
            self.images.append(image)
        }
    } catch {
        print(error.localizedDescription)
    }
}

要运行此功能,需要Zip Foundation。感谢@ jn-pdx指出正确的方向。经过一番挖掘之后,我找到了一种创建Archive带有内存数据的方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章