में कनवर्ट करना मैं एक सरणी से आने वाले सरणी से स्ट्रिंग पढ़ने और उन तारों को प्रिंट करने की कोशिश कर रहा हूं।यूटीएफ 8 अक्षरों से बचने के लिए उनके मूल रूप
सरणी में तारों में यूटीएफ 8 अक्षरों से बच निकला है - उदाहरण के लिए "Nuša Florjančič" plist से पढ़ते समय "Nu\u0161a Florjan\u010di\u010d"
बन जाता है। प्लेस्ट की सामग्री को बदलने का कोई तरीका नहीं है, लेकिन मेरे प्रोग्राम को नामों को सही तरीके से प्रदर्शित करने की आवश्यकता है।
अजीब बात यह है कि उद्देश्य-सी स्ट्रिंग को हार्डकोड करते समय स्वचालित रूप से ऐसा करने लगता है। हालांकि, अगर मुझे प्लेस्ट से स्ट्रिंग मिलती है तो कुछ भी नहीं होता है।
आपको एक उदाहरण देता करने के लिए, यहाँ कुछ कोड है:
NSString *name1 = @"Nu\u0161a Florjan\u010di\u010d";
NSString *name2 = [list objectAtIndex:0];
NSLog(@"name 1: %@", name1);
NSLog(@"name 2: %@", name2);
[list objectAtIndex:0]
@"Nu\u0161a Florjan\u010di\u010d"
शामिल हैं - फर्क सिर्फ इतना है कि यह plist संपादक के माध्यम से स्थापित किया गया है कि है।
कंसोल आउटपुट है:
2011-10-22 18:00:02.595 Test[13410:11c03] name 1: Nuša Florjančič
2011-10-22 18:00:02.595 Test[13410:11c03] name 2: Nu\u0161a Florjan\u010di\u010d
मैं चीजों के सभी प्रकार की कोशिश की है एक सी स्ट्रिंग में स्ट्रिंग बदलने और फिर एक UTF-8 एन्कोडिंग के साथ एक NSString
वस्तु बनाने लेकिन कुछ भी पर काम किया सहित, सब।
मैं वास्तव में आपके किसी भी संकेतक की सराहना करता हूं जो मुझे इस प्रतीत होता है कि यह समस्याएं हल हो सकती हैं।
बहुत बहुत धन्यवाद, दोस्त! यह चाल है :) – Tobi
कोड का बड़ा टुकड़ा। धन्यवाद। –
@Tobi अगर यह काम करता है, तो आप इसे उत्तर के रूप में क्यों चिह्नित नहीं कर सकते? – DroidHeaven