मैं एक सरणी मान रहा हूं, लेकिन यह शब्दकोशों के साथ भी काम करेगा।
उपयोगकर्ता डिफॉल्ट, कोर डेटा और प्लिस्ट सभी को पढ़ा/लिख सकता है लेकिन यदि आप एक प्लेस्ट का उपयोग करते हैं तो आपको ध्यान देने की आवश्यकता है कि आपने इसे किस डायर में रखा है। नीचे plist भाग देखें।
कोर डेटा मुझे लगता है कि यह बहुत अधिक ओवरकिल है, यह सिर्फ तार है। जब आप अधिक जटिल वस्तुओं को जारी रखना चाहते हैं तो इसका उपयोग किया जाना चाहिए।
NSUserDefaults:
हालांकि यह सिर्फ उपयोगकर्ता सेटिंग रखने की अपेक्षा की जाती है यह बहुत तेजी से और आसान है। userdefaults करने के लिए उन्हें लिखने के लिए:
NSArray *stringsArray = [[NSArray alloc] arrayWithObjects: string1, string2, string3, nil];
[[NSUserDefaults standardUserDefaults] setObject:stringsArray forKey:@"MyStrings"];
[[NSUserDefaults standardUserDefaults] synchronize];
userdefaults से पढ़ने के लिए:
NSArray *stringsArray = [[NSUserDefaults standardUserDefaults] objectForKey:@"MyStrings"];
Plist:
अपने तार संशोधित किया जा करने के लिए आप लिखने के लिए की आवश्यकता होगी जा रहे हैं और एक प्लेस्ट पढ़ें लेकिन आप अपने ऐप के संसाधनों में लिख नहीं सकते हैं।
पढ़ने/लिखने plist पहले दस्तावेजों निर्देशिका
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *stringsPlistPath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"Strings.plist"];
सरणी बनाएँ (मैं यह सोचते हैं रहा तार, string1 रहे हैं ...)
NSArray *stringsArray = [[NSArray alloc] arrayWithObjects: string1, string2, string3, nil];
- पाते हैं करवाने के लिए
इसे
[stringsArray writeToFile:stringsPlistPath atomically:YES];
फ़ाइल करने के लिए लिखें
दस्तावेजों निर्देशिका
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *stringsPlistPath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"Strings.plist"];
में इसे पढ़ें खोजें:: 210
plist पढ़ने के लिए
NSArray *stringsArray = [NSArray arrayWithContentsOfFile:stringsPlistPath];
मैंने हाल ही में उपयोग किए गए यूआरएल की सूची के लिए प्लिस्ट समाधान लागू किया। ऐसा लगता है कि मेरी समस्या के लिए प्लिस्ट सही दृष्टिकोण था। लेकिन मुझे यह कहना है कि एंड्रॉइड पर ऐसा करने के बाद, यह आश्चर्यजनक रूप से एक सीखने की अवस्था और समग्र प्रयास के रूप में कहीं अधिक शामिल था। तो मुझे उपरोक्त उदाहरण कोड के लिए बहुत कुछ टिप्पणी करना और कहना है ... – user574771
प्रश्न ... जब आप कहते हैं कि "आप अपने ऐप्स संसाधनों में नहीं लिख सकते हैं" तो क्या आपका मतलब है कि हम एक प्लेलिस्ट को नहीं लिख सकते हैं हम xcode के भीतर से बनाते हैं और पॉप्युलेट करते हैं? – crazyCoder
आप केवल अपने ऐप की दस्तावेज़ निर्देशिका में लिख सकते हैं। तो आप उस प्लिस्ट को संसाधन निर्देशिका से रनटाइम पर दस्तावेज़ निर्देशिका में कॉपी कर सकते हैं और फिर इसे संपादित कर सकते हैं। – doppioslash