客户端上传压缩文件(zip)的思路和实现

压缩文件上传的场景

前段时间,工作中有一个这样的需求,用户选择本机的多张图片要以压缩包(zip)格式的方式来进行上传服务器.

工作准备

本文提供的方法使用ZipArchive来实现
首先需要在本地创建压缩包的临时路径

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *rootPathStr = ([paths count] > 0) ? paths[0] : nil;
    /** 压缩包名*/
    NSString *uploadFileName = @"publicRequireFile.zip";
    NSString *photoZip = [rootPathStr stringByAppendingPathComponent:uploadFileName];

第二步创建压缩文件

 ZipArchive *zip =[[ZipArchive alloc] init];
    /** 创建zip文件*/
    BOOL ret = [zip CreateZipFile2:photoZip];

第三步 /** 遍历文件夹,将文件夹中的文件添加到压缩文件包中*/

   dirEnum = [photoFileManager enumeratorAtPath:imagePath];
    while ((fileName = [dirEnum nextObject]) != nil) {
        ret = [zip addFileToZip:[imagePath stringByAppendingPathComponent:fileName] newname:fileName];
    }

第四步,也是最重要的一步判断文件是否压缩成功

[zip CloseZipFile2]

第五步实现上传服务器,与图片的上传基本一致不在做过多的介绍

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,313评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,204评论 4 61
  • 方鸿渐无意与赵辛楣为敌,因为他并不爱苏小姐,他爱的是年轻漂亮、聪明活泼的唐晓芙。苏小姐明白了这一切之后,恼...
    胡妙妙阅读 2,635评论 0 0
  • 这本书零零碎碎用了20多天的时间终于看完了,看的过程中有很多的认知和感悟,因为边看会边想到作者所处的环境,所感受作...
    梦里琼斯儿阅读 1,703评论 0 0
  • 向往神瀑沟,计划被酝酿了无数次。都被变化摧残流了产。 不知那位哲学家说过:你想要什么,你强烈的意志力会吸引宇宙的力...
    刘苔米阅读 3,935评论 0 0