文件上传及进度显示

原创 2015年11月20日 17:00:42

之前遇到需要显示文件上传时的进度问题,就整理了下资料,没什么复杂的东西,看代码吧。

NSString *urlString = [NSString stringWithFormat:@"%@api/?method=gdb.send_talk",BASEURL];//你的URL

    NSDictionary *dict = @{@"type":[NSString stringWithFormat:@"%d",pvtype],@"content":_textView.text};//需要传的dict,没有写nil

    AFHTTPRequestSerializer *serializer = [AFHTTPRequestSerializer serializer];
    NSMutableURLRequest *request = [serializer multipartFormRequestWithMethod:@"POST" URLString:urlString
                                                                   parameters:dict
                                                    constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {

                                                        NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
                                                        // 设置时间格式
                                                        formatter.dateFormat = @"yyyyMMddHHmmss";
                                                        NSString *str = [formatter stringFromDate:[NSDate date]];
                                                       //按时间给传的文件命名
                                                            NSString *imageName = [NSString stringWithFormat:@"%@.jpg", str];
                                                            NSString *videoName = [NSString stringWithFormat:@"%@.mp4", str];

                                                            [formData appendPartWithFileData:videoData name:@"video" fileName:videoName mimeType:@"mp4"];//传视频 videoData  视频所在的data
                                                            [formData appendPartWithFileData:image_data name:@"image" fileName:imageName mimeType:@"jpg"];//传图片 imageData 图片所在的data



                                                    }];
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
    AFHTTPRequestOperation *operation =
    [manager HTTPRequestOperationWithRequest:request
                                     success:^(AFHTTPRequestOperation *operation, id responseObject) {
                                         NSLog(@"Success %@", responseObject);
                                         [self.navigationController popViewControllerAnimated:YES];

                                     } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
                                         NSLog(@"Failure %@", error.description);
                                     }];
    [operation setUploadProgressBlock:^(NSUInteger __unused bytesWritten,
                                        long long totalBytesWritten,
                                        long long totalBytesExpectedToWrite) {

        NSLog(@"传了%.2fMB/共 %.2fMB",totalBytesWritten/1024.0/1024.0,totalBytesExpectedToWrite/1024.0/1024.0);

    }];
    [operation start];
版权声明:欢迎转载和分享,转载请注明出处。

PHP:显示文件上传进度及上传任意大小的文件

...........
  • FringeDream
  • FringeDream
  • 2005年07月18日 10:02
  • 909

JavaWeb项目实现文件上传动态显示进度

当我学习JavaWeb文件上传的时候,我就一直有一个疑问,网站上那些博客的图片是怎么上传的,因为当提交了表单之后网页就跳转了。后来我学习到了Ajax,我知道了浏览器可以异步的发送响应,这时我又有新的疑...
  • hesi9555
  • hesi9555
  • 2017年04月13日 09:32
  • 424

JAVA实现大文件上传及显示进度信息

一. 大文件上传基础描述:   各种WEB框架中,对于浏览器上传文件的请求,都有自己的处理对象负责对Http MultiPart协议内容进行解析,并供开发人员调用请求的表单内容。 比如: ...
  • moonpure
  • moonpure
  • 2017年02月04日 10:15
  • 1197

Java动态显示文件上传进度的简单实现

实现文件上传的进度显示,我们先看看都有哪些问题我们要解决。 1 上传数据的处理进度跟踪 2 进度数据在用户页面的显示 就这么2个问题, 第一个问题,主要是组件的选择 必须支持数据处理侦听或通知的组件。...
  • java2000_net
  • java2000_net
  • 2008年03月08日 06:12
  • 8571

Struts2实现文件上传并显示实时进度

我们为了改善用户界面,通常会在处理量大或者是网络速度较慢的时候,给用户显示一个处理进度,让用户心理有底,增强用户等待结果的耐心,以改善用户体验。为了达到这个效果,通常做法有两大类:简单等待和真实的处理...
  • zhouhua0104
  • zhouhua0104
  • 2014年07月18日 09:48
  • 3045

SpringMVC上传文件进度显示

效果图: FileUploadController.java import java.io.File; import java.util.List; import javax.servl...
  • waysoflife
  • waysoflife
  • 2016年05月10日 16:18
  • 2560

retrofit显示上传文件进度

首先说一下,如果是使用了Interceptor来拦截请求log的话,会导致上传两遍,而导致上传失败,会抱一个protcolException,unexpected of Stream,那么你要是上传的...
  • qq_34723470
  • qq_34723470
  • 2017年07月15日 12:58
  • 207

SpringMVC之文件上传(进度条显示)

1、实现org.apache.commons.fileupload.ProgressListener接口 import javax.servlet.http.HttpSession; import ...
  • zmx729618
  • zmx729618
  • 2016年06月02日 12:48
  • 5180

Servlet实现带进度条的文件上传

在上一篇博文中介绍了通过POST的方式上传文件:点击打开链接 ,这一篇文章将介绍如何实现带进度条的上传效果。 工作原理:上传文件的同时,Servlet将上传进度的信息例如文件总长度、已上传文件的多少、...
  • Joewin19911225
  • Joewin19911225
  • 2016年12月16日 20:35
  • 586

PHP 获取文件上传进度

获取文件上传进度的方法很多,该文介绍的是使用session.upload_progress,基于PHP 5.4以上版本的方法。 【1】文件php.ini 配置 根据实际情况进行设置 session.u...
  • aoshilang2249
  • aoshilang2249
  • 2015年07月22日 09:44
  • 2554
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:文件上传及进度显示
举报原因:
原因补充:

(最多只允许输入30个字)