IOS成长之路-从网络读取数据
2012-05-22 15:56
429 查看
逻辑:
首先创建一个NSURL地址,发送request请求,然后调用
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSMutableData
*)data
把下载的数据存储到NSDate对象中,当下载完成后执行
- (void)connectionDidFinishLoading:(NSURLConnection *)connection 方法,
假如连接出现错误:
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
首先创建一个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网络编程怎样读取数据
- ios读取网络图片数据
- IOS成长之路-解析xml数据
- IOS成长之路-实现界面切换和数据的传递
- IOS成长之路-实现界面切换和数据的传递
- ios离线读取上次网络请求的数据。
- [IOS]网络操作+图片的下载和读取+json数据读取
- IOS成长之路-解析xml数据
- [IOS]网络操作+图片的下载和读取+json数据读取
- ios 读取GB2312编码文件及网络数据
- iOS 网络编程之TCP/IP <四> 根据协议解析数据
- iOS中从网络获取数据的几种方法的比较
- IOS学习之十六:网络数据的XML解析
- iOS开发本地缓存(数据离线缓存、读取、释放)
- iOS网络开发——解析与封装JSON数据
- Linux 网络编程一步一步学(三)-循环读取服务器上的数据
- iOS去除网络请求到的数据的null值
- iOS网络数据缓存
- ios开发之网络数据的下载与上传