मैं एक एनएसएसटींग ऑब्जेक्ट को एक समान संख्यात्मक मान के साथ एनएसएनंबर में परिवर्तित करने की कोशिश कर रहा हूं। जब मैं इस कथन का उपयोग NSString वस्तु बनाने ...NSNumber क्लास सही ढंग से मेरे एनएसएसटींग ऑब्जेक्ट को लंबे समय तक क्यों परिवर्तित नहीं कर रहा है?
NSString *songID = [localNotif.userInfo objectForKey:@"SongID"];
वर songID
स्ट्रिंग मान @"10359537395704663785"
शामिल हैं। और जब मैं यह कथन का उपयोग एक NSNumber वस्तु में बदलने के लिए ...
NSNumber *songIDNumber = [NSNumber numberWithLongLong:[songID longLongValue]];
वर songIDNumber
9223372036854775807
क्या मैं गलत कर रहा हूँ के गलत मान का प्रयास? यह ध्यान देने योग्य भी हो सकता है कि कभी-कभी यह कोड काम करता है और सही NSNumber मान का उत्पादन करता है, लेकिन अधिकांश समय यह ऊपर दिखाए गए अनुसार विफल रहता है।
आपकी मदद के लिए अग्रिम धन्यवाद!
अद्यतन: ईश्वर मुझे इस साइट से प्यार है! unbeli और कार्ल के लिए धन्यवाद, मैं NSString से NSNumber को परिवर्तित करने के लिए अद्यतन कोड का उपयोग कर इसे ठीक करने में सक्षम था ...
unsigned long long ullvalue = strtoull([songID UTF8String], NULL, 0);
NSNumber *songIDNumber = [NSNumber numberWithUnsignedLongLong:ullvalue];