2013-05-04 98 views
-2

我正在爲iPad構建一個應用程序。任何人都可以給我任何關於如何解析目標C中的這個JSON鏈接的建議,所以我可以從「item_media」獲取一個圖像(media_655fa.png)?示例代碼:解析目標C中的JSON鏈接

{ 
    "id":"6", 
    "item_type":"page", 
    item_name":"intro_page", 
    "item_media":"http:\/\/demo.test.biz\/test\/var\/uploads\/default_item\/media_655fa.png", 
    "item_text":"" 
} 

或者,如果任何人有關於如何做的建議。問題在於PHP使用json_encode()發送的鏈接。我怎麼能在PHP中像目標C那樣做json_decoderegexp

+0

在NSJSONSerialization ... – 2013-05-04 16:52:31

+0

是看一看。鏈接是奇怪的兩個問題\/.. :-( – user2350264 2013-05-04 16:55:22

+1

如果您已經使用NSJSONSerialization,那麼你應該提及並顯示你的代碼 - \\ /看起來更像是一個服務器端錯誤 – 2013-05-04 16:59:56

回答

0

您可以解析JSON爲:

// ***************** FETCHING DATA ******************* // 
NSURL *URL = [NSURL URLWithString:[NSString stringWithFormat:@"%@",SiteAPIURL]]; 
NSData *data= [NSData dataWithContentsOfURL:URL]; 
if (data == nil) { 
    return; 
} 
NSError* error; 
NSMutableDictionary *jsonIs = [NSJSONSerialization 
          JSONObjectWithData:data 
          options:kNilOptions 
          error:&error]; 

// NSLog(@"Json : %@",jsonIs); 
if (jsonIs != nil) { 

     NSString *item_media = [jsonIs objectForKey:@"item_media"]; 
} 

這裏item_media是你的圖片鏈接。

希望它可以幫助你。

+0

謝謝',, ,, Iwill嘗試 – user2350264 2013-05-04 18:15:56

+0

標記此答案,如果它解決您的問題。 – 2013-05-04 18:42:50

+0

是的,但仍然應用程序沒有得到圖像... – user2350264 2013-05-04 18:45:08

0

試試這個

NSString *jsonString = @"{\"id\":\"6\",\"item_type\":\"page\",\"item_name\":\"intro_page\",\"item_media\":\"http://demo.test.biz/test/var/uploads/default_item/media_655fa.png\",\"item_text\":\"\"}"; // Here jsonString is your Response from server 

NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding]; 

__autoreleasing NSError *error = nil; 
NSDictionary *jsonDictionary = [NSJSONSerialization JSONObjectWithData:jsonData options:kNilOptions error:&error]; 

if(jsonDictionary != nil) { 

    NSLog(@"~~~~ item_media: %@", [jsonDictionary objectForKey:@"item_media"]); 
} 
+3

請注意,檢查成功的正確方法是'if(jsonDictionary!= nil)',而不是'if(error == nil)'。 – 2013-05-04 17:11:56

+0

我同意 – user2350264 2013-05-04 17:39:35

+0

如果有任何解析錯誤,錯誤不會爲零。以便我們將錯誤的引用傳遞給JSONSerializer – 2013-05-04 18:07:48