2016-08-08 35 views
0

我正在接收我的請求中的字符串;該字符串是一組數字對,用方括號分組。 (該列表表示要在我的應用程序中顯示的多邊形。)將表示數組數組的數組轉換爲NSArray

我需要將其轉換爲NSArray並將所有數字解析爲座標。

接收到的字符串是

[[[53.502483, -113.420593], [53.503429, -113.421527], [53.503491, -113.421673], [53.503002, -113.42164], [53.502719, -113.421426], [53.502483, -113.420593]]] 

所有我發現只是在課本的一個列表轉換爲NSArray的例子。我找不到任何字符串中有多個數組的地方。

+1

您需要一個正則表達式來獲取[]之間的字符串,然後根據逗號(,)拆分字符串並將結果添加到數組中。請顯示你的嘗試。 –

+1

@TejaNandamuri不,你不需要*正則表達式。還有其他幾種解析字符串的方法。 – rmaddy

+1

@rmaddy你們正在把所有的東西都字面上:P。是的,還有其他方式。 –

回答

3

的字符串看起來像有效的JSON,所以......

NSError *error; 
NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding]; 
NSArray *array = [NSJSONSerialization JSONObjectWithData:data options:nil error:&error]; 

會給陣列,提供string包含輸入。如果它來自網絡請求,則可以保存一個步驟並直接轉換請求的NSData

+0

我正在那樣做,多邊形沒有繪製在地圖上。發佈這個問題20分鐘後,我發現服務器返回的是緯度而不是經度,反之亦然..aghhh 2小時搜索沒有任何內容..感謝您的回覆,我會將其標記爲您的幫助答案:) –