当前位置: 移动技术网 > IT编程>开发语言>.net > 如何结合asp.net webservice实现文件上传下载。

如何结合asp.net webservice实现文件上传下载。

2018年03月25日  | 移动技术网IT编程  | 我要评论

f-15战斗机,一刀劈开生死路,高管增持

我们下载cnblogs上的一个zip文件。使用NSURLRequest+NSURLConnection可以很方便的实现这个功能。在asp.net webservice中可以将文件的地址返回到iOS系统,iOS系统再通过这个url去请求下载该文件。这里为了简单起见,直接将url写道代码里面了。我们可以使用两种方式去下载文件。

 

1、同步下载文件:

[cpp]  

<span style="font-family:宋体;">NSString *urlAsString = @"https://files.cnblogs.com/zhuqil/UIWebViewDemo.zip";   

        NSURL    *url = [NSURL URLWithString:urlAsString];   

        NSURLRequest *request = [NSURLRequest requestWithURL:url];   

        NSError *error = nil;   

        NSData   *data = https://www.cnblogs.com/zhwl/archive/2012/07/13/[NSURLConnection sendSynchronousRequest:request   

                                               returningResponse:nil   

                                                           error:&error];   

        /* 下载的数据 */   

        if (data != nil){   

            NSLog(@"下载成功");   

            if ([data writeToFile:@"UIWebViewDemo.zip" atomically:YES]) {   

                NSLog(@"保存成功.");   

            }   

            else   

            {   

                NSLog(@"保存失败.");   

            }   

        } else {   

            NSLog(@"%@", error);   

        } </span>  

 

 

2.异步下载

[cpp]  

<span style="font-family:宋体;">DownLoadingViewController.h  

  

//  DownLoadingViewController.h   

//  DownLoading   

//   

//  Created by skylin zhu on 11-7-30.   

//  Copyright 2011年 mysoft. All rights reserved.   

//   

  

#import   

  

@interface DownLoadingViewController : UIViewController {   

    NSURLConnection *connection;    

    NSMutableData *connectionData;   

}   

@property (nonatomic,retain) NSURLConnection *connection;     

@property (nonatomic,retain) NSMutableData *connectionData;   

@end   

  

DownLoadingViewController.m  

  

//  DownLoadingViewController.m   

//  DownLoading   

//   

//  Created by skylin zhu on 11-7-30.   

//  Copyright 2011年 mysoft. All rights reserved.   

//   

  

#import "DownLoadingViewController.h"   

  

@implementation DownLoadingViewController   

@synthesize connection,connectionData;   

- (void)dealloc   

{   

    [super dealloc];   

}   

  

- (void)didReceiveMemoryWarning   

{   

    // Releases the view if it doesn't have a superview.   

    [super didReceiveMemoryWarning];   

      

    // Release any cached data, images, etc that aren't in use.   

}   

  

#pragma mark - View lifecycle   

  

  

// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.   

- (void)viewDidLoad   

{   

    [super viewDidLoad];   

    //文件地址   

    NSString *urlAsString = @"https://files.cnblogs.com/zhuqil/UIWebViewDemo.zip";   

    NSURL    *url = [NSURL URLWithString:urlAsString];   

    NSURLRequest *request = [NSURLRequest requestWithURL:url];   

    NSMutableData *data = https://www.cnblogs.com/zhwl/archive/2012/07/13/[[NSMutableData alloc] init];   

    self.connectionData = https://www.cnblogs.com/zhwl/archive/2012/07/13/data;   

    [data release];   

    NSURLConnection *newConnection = [[NSURLConnection alloc]   

                                      initWithRequest:request   

                                      delegate:self   

                                      startImmediately:YES];   

    self.connection = newConnection;   

    [newConnection release];   

    if (self.connection != nil){   

       NSLog(@"Successfully created the connection");   

    } else {   

        NSLog(@"Could not create the connection");   

    }   

}   

  

  

  

  

- (void) connection:(NSURLConnection *)connection   

            didFailWithError:(NSError *)error{   

    NSLog(@"An error happened");   

    NSLog(@"%@", error);   

}   

- (void) connection:(NSURLConnection *)connection   

              didReceiveData:(NSData *)data{   

    NSLog(@"Received data");   

    [self.connectionData appendData:data];   

}   

- (void) connectionDidFinishLoading   

:(NSURLConnection *)connection{   

    /* 下载的数据 */   

  

        NSLog(@"下载成功");   

        if ([self.connectionData writeToFile:@"UIWebViewDemo.zip" atomically:YES]) {   

            NSLog(@"保存成功.");   

        }   

        else   

        {   

            NSLog(@"保存失败.");   

        }   

    

    /* do something with the data here */   

}   

- (void) connection:(NSURLConnection *)connection   

          didReceiveResponse:(NSURLResponse *)response{   

    [self.connectionData setLength:0];   

}   

  

- (void) viewDidUnload{   

    [super viewDidUnload];   

    [self.connection cancel];   

    self.connection = nil;   

    self.connectionData = https://www.cnblogs.com/zhwl/archive/2012/07/13/nil;   

}   

  

@end </span>  

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网