IOS成长之路-从网络读取数据
来源:互联网 发布:工资考勤软件 编辑:程序博客网 时间:2024/05/16 06:23
逻辑:
首先创建一个NSURL地址,发送request请求,然后调用
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSMutableData *)data
把下载的数据存储到NSDate对象中,当下载完成后执行- (void)connectionDidFinishLoading:(NSURLConnection *)connection 方法,
假如连接出现错误:
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
实现:
//定义一个NSDate对象NSMutableData *buffer;/*=========------------------==============*/- (void)viewDidLoad{ //调用down方法 [self Down]; //初始化 buffer buffer = [[NSMutableData alloc]init]; [super viewDidLoad];}-(void) Down{ //创建url NSURL *url = [NSURL URLWithString:@"http://192.168.67.3:8080/movie/3.mp4"]; //基于http的连接请求 NSURLRequest* request = [[NSURLRequest alloc]initWithURL:url]; //创建 connection 会话NSURLConnection* connection = [[NSURLConnection alloc]initWithRequest:request delegate:self]; //释放[connection release];[request release];}//提供一个NSData, 封装了刚从连接上收到的字节块//下载添加数据的时候会产生一个数据回调(它是一部分一部分的下载),直到数据全部下载完成- (void)connection:(NSURLConnection *)connection didReceiveData:(NSMutableData *)data{ //buffer 是一个可以修改的data 数据,把从网络上下载的数据 data 添加进去[buffer appendData:data];}//基于http的会话已经完成会执行(就是下载完成)- (void)connectionDidFinishLoading:(NSURLConnection *)connection{ //创建一个文件, 指定路径,名称,和内容 [[NSFileManager defaultManager]createFileAtPath:@"/tmp/movie.mp4" contents:buffer attributes:nil];}//当网络连接不成功或出现异常的时候会调用,提供一个NSError以解释失败的原因- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error{ //加载的是一个警告框UIAlertView *errorAlert = [[UIAlertView alloc] initWithTitle: [error localizedDescription] message: [error localizedFailureReason] delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];[errorAlert show];[errorAlert release];}
- IOS成长之路-从网络读取数据
- 从网络读取数据
- IOS成长之路-解析xml数据
- IOS成长之路-解析xml数据
- IOS成长之路
- Android成长之路-获取网络数据(图片)
- ios读取网络图片数据
- IOS成长之路-数据库的数据添加和查询
- iOS 从网络获取数据
- IOS成长之路-NSDate
- IOS成长之路-NSDate
- IOS成长之路-NSDate
- ios成长之路UIView
- 浅谈IOS网络编程怎样读取数据
- Android 网络编程之HttpURLConnection(conn.getResponseCode() != 200,从url读取写入数据)
- [iOS 读取Txt] 从文件读取数据并做轮询
- 从底层到应用,大数据工程师成长之路必备技能汇总
- 软件从业者的成长之路
- cocos2d 截屏操作中断触屏操作的问题
- 高手们请问如何知道一个点是否在一个扇形内呢?
- GridView导出到Word
- Linux netfilter源码分析
- linux cut命令参数及用法详解--分段显示内容
- IOS成长之路-从网络读取数据
- Winform下的 Excel导入数据库数据
- FastDB内存数据库API
- Tagbrand:签到与电子商务的完美结合
- oracle库中的rowid和rownum
- sed使用详解
- app_offline.htm 在系统维护中的应用
- wince的编译过程
- android 程序运行报:"0x****"指令引用的"0x****"内存,该内存不能为"written"错误的解决