Plist

2011-08-08 13 views
6

से ऐरे लोड हो रहा है। मैं अपनी सरणी को मेरी सूची में एक सरणी से लोड करने का प्रयास कर रहा हूं। लेकिन यह काम नहीं कर रहा है।Plist

plist इस तरह दिखता है:

enter image description here

इस कोड मैं का उपयोग कर रहा है:

NSString *path = [[NSBundle mainBundle]pathForResource:@"DiseasePropertyList" ofType:@"plist"]; 
NSMutableArray *rootLevel = [[NSMutableArray alloc]initWithContentsOfFile:path]; 
self.myArray = rootLevel; 
[rootLevel release]; 
+8

आप उस सूची के साथ खतरनाक लग रहे हैं! – Moshe

उत्तर

9

इसे आजमाएं। कृपया फ़ाइल का नाम बदलें। यह ठीक काम करता है।

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 

NSString *recentFilePath = [documentsDirectory stringByAppendingPathComponent:@"recent.plist"]; 
NSArray *history = [NSArray arrayWithContentsOfFile:recentFilePath]; 
+2

एक और तरीका: '\t NSURL * url = [[NSBundle mainBundle] URLForResource: @" रोगप्रॉपर्टीलिस्ट "एक्सटेंशन के साथ: @" plist "]; \t एनएसएआरएआरई * myArray = [NSArray arrayWithContentsOfURL: url]; ' –

2
NSString *pathStr = [[NSBundle mainBundle] bundlePath]; 
NSString *finalPath = [settingsBundlePath stringByAppendingPathComponent:@"yourproject.plist"]; 
NSDictionary *settingsDict = [NSDictionary dictionaryWithContentsOfFile:finalPath]; 

और बस settingsDict का विवरण की जाँच करें। उम्मीद है कि यह आपकी मदद करेगा।

5

आपकी प्लिस्ट वास्तव में एक शब्दकोश है। सरणी कुंजी "ऐरे" के लिए उस शब्दकोश का उद्देश्य है। आप "ऐरे" और काटने (सीएमडी-एक्स) का चयन करके और फिर खाली प्लेस्ट (सीएमडी वी) में पेस्ट करके एक्सकोड 4 में एक सरणी में प्लेस्ट बना सकते हैं।

+2

मैं कहूंगा कि यह सबसे अधिक संभावना है। आप प्लिस्ट को स्रोत के रूप में भी देख सकते हैं और फ़ाइल से '' और '' टैग हटा सकते हैं (मैं इसे हर समय करता हूं)। – theMikeSwan

+2

को हटाएं .. टैग शुरू करने के बाद टैग .. यह निश्चित रूप से मेरे लिए समस्या हल करेगा .... – DShah

2

अपने plist फ़ाइल आपके आवेदन बंडल में है, तो सबसे आसान यह है: इस विधि यह मेरे लिए ठीक काम किया

NSArray *myArray = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"filename_without_extension" ofType:@"plist"]]; 
0

का प्रयोग करें।

NSArray *country= [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"CountryList" ofType:@"plist"]];