我有一個使用JSON填充的NSDictionary的問題。 JSON數據看起來像這樣和我能夠得到的金額從NSDictionary中檢索JSON值
Balance = {
amount = "33069.42";
currencyCode = USD;
};
NSString *amtStr = [[account objectForKey:@"Balance"] valueForKey:@"amount"]);
NSString *formattedAmt = [NSString stringWithFormat:@"$%.2f", [amtStr floatValue]];
但是,在某些情況下,對數量沒有價值,而是量有另一個的NSDictionary作爲下面的示例中
Balance = {
amount = {
nil = 1;
};
currencyCode = {
nil = true;
};
};
當我嘗試做stringWithFormat
NSString *formattedAmt = [NSString stringWithFormat:@"$%.2f", [amtStr floatValue]];
拋出
-[__NSCFDictionary floatValue]: unrecognized selector sent to instance 0x8a551e0
關於如何在第二種情況下獲得金額值的任何想法?如果金額爲零,我需要將amtStr設置爲0.
在此先感謝您的幫助。
首先,我會試圖弄清楚爲什麼你得到那個扭曲的JSON - 這是不正常的。特別是,「無」的關鍵名稱強烈暗示某些事情已經被解決 - 可能是一些殭屍存儲。 (你應該至少在反序列化之前檢查原始的JSON,並且可能再次檢查另一端。)但是如果你確定它是正確的,你應該像其他人一樣使用'isKindOfClass'。 –
是的,好點。在反序列化之前,我確實檢查了數據,這就是它遇到的情況。所以我使用了下面推薦的建議並使其工作。謝謝大家的回覆。 – user1657861
我強烈建議你在另一端詢問其他人 - 它看起來確實像是有些混亂。 –