天天看點

OC學習日記017(二)從網絡下載下傳圖檔放到UI界面NSURL的應用與編碼

NSURL的應用與編碼

步驟:

我們下載下傳圖檔時,其實隻需要先擷取圖檔相對應的URL,然後通過NSDATA類型的方法去擷取(下載下傳)圖檔的資料,就可以得到我們要的圖檔了。
           

第一步:

這裡我們要去Main.storyboard裡面拉出一個Image View的控件
           
OC學習日記017(二)從網絡下載下傳圖檔放到UI界面NSURL的應用與編碼

第二步:

然後通過按住control或滑鼠右鍵去将控件關聯到我們主函數的屬性聲明中
           
OC學習日記017(二)從網絡下載下傳圖檔放到UI界面NSURL的應用與編碼
OC學習日記017(二)從網絡下載下傳圖檔放到UI界面NSURL的應用與編碼
NSString *[email protected]"http://f.hiphotos.baidu.com/image/pic/item/e1fe9925bc315c60d916f9d58ab1cb134954770d.jpg";
//将urlString 轉成 NSURL 類
NSURL *url=[NSURL URLWithString:urlString];
NSData *data=[NSData dataWithContentsOfURL:url];
NSLog(@"data = %@",data);
self.aaa.image=[UIImage imageWithData:data];
           

将url字元串編碼

有時候我們傳給伺服器的參數中會出現中文,但是URL不支援中文等一些特殊的字元串,此時需要進行url編碼。
對于URL類型的資料,我們還可以從中擷取這個URL的協定與伺服器名稱等。
           
NSString *[email protected]"http://f.hiphotos.baidu.com/image/pic/小貓aa.jpg";
[urlString2 stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];
    NSURL *url2=[NSURL URLWithString:urlString2];
    NSData *data2=[NSData dataWithContentsOfURL:url2];
    //協定
    NSLog(@"%@",url2.scheme);
    //伺服器名稱
    NSLog(@"%@",url2.host);
    NSLog(@"%@",url2.query);