8

यदि आप अपने विंडोज फोन एमुलेटर या डिवाइस को जापानी, कोरियाई, या अन्य गैर लैटिन भाषाओं में डालते हैं और लोगों के ऐप का उपयोग करते हैं, तो लॉन्गलिस्टस्टाइलर के उनके कार्यान्वयन से जापानी समूह के पात्रों को दिखाया जाता है, फिर एक यूनिकोड "मेरिडियन के साथ ग्लोब" चरित्र होता है, इसके बाद एज़ अक्षर:LongListSelector में जापानी और अन्य गैर-लैटिन नामों को कैसे समूहित करें?

WP7 People AppWP7 People App

विंडोज फोन टूलकिट से LongListSelector साथ

, आप अपने खुद के मैनुअल समूहीकरण तर्क क्या करना है। मैं जापानी/कोरियाई/आदि नाम समूह के पात्रों की सूची कैसे प्राप्त करूं और मैं कैसे निर्धारित करूं कि एक समूह का नाम किस नाम के अंतर्गत जाता है (क्योंकि मेरा दूसरा स्क्रीनशॉट देख रहा है, समूहबद्ध चरित्र उपयोगकर्ता नाम में कहीं भी नहीं है)?

+3

マ (मा) ま वही अर्थ है, में पहले वर्ण

आप केवल हीरागाना का समर्थन करना चाहते हैं, तो यहाँ कुछ है कि मदद करनी चाहिए है नाम दिखाया गया। अंतर यह है कि समूहबद्ध चरित्र कटकाना है, जबकि दूसरा एक हिरागाना है। दोनों जापानी लिखने के लिए उपयोग किए जाने वाले पाठ्यक्रम हैं, और जब उनके पास अलग-अलग उद्देश्यों हैं (कटकाना मुख्य रूप से ऋण के लिए उपयोग की जाती है), तो आप इस तरह के समूह के लिए समान रूप से उनका इलाज करना चाहेंगे। मैं नहीं कह सकता कि यह ग्रुपिंग हेडर के लिए हिरागाना के बजाय कटकाना का उपयोग क्यों कर रहा है, लेकिन मुझे किसी भी तस्वीर में कुछ भी गलत नहीं लगता है। –

+0

यह भी ध्यान दें कि यह चरित्र द्वारा समूहित नहीं है, बल्कि "प्रारंभिक ध्वनि" - वह हिस्सा जो स्वर से पहले जाता है। इन पाठ्यक्रमों के काम के तरीके के कारण जापानी में चीजों को व्यवस्थित करने का यह एक आम तरीका है। –

उत्तर

2

मुझे विशेष रूप से विंडोज फोन टूलकिट के बारे में कुछ भी पता नहीं है, लेकिन मूल रूप से, यह इस तरह काम करता है: अधिकांश जापानी नामों में कांजी फॉर्म होगा (जो आमतौर पर लिखा जाता है, और क्या प्रदर्शित होता है)। चूंकि कांजी रूप में अस्पष्ट उच्चारण हो सकता है, इसलिए उच्चारण के लिए फ़ील्ड भी हैं। आप नाम समूह के लिए उच्चारण फ़ील्ड का उपयोग करते हैं। (और आप किसी अन्य "समूह" में उच्चारण फ़ील्ड में डेटा के बिना किसी भी नाम को समूहित कर सकते हैं)।

उदाहरण के लिए: कांजी: 山 本 次郎 काटाकना: ヤ マ モ ト ジ ロ ウ

फिर अपने "समूहीकरण वर्ण" सिर्फ एक सूची रहे हैं (या आंशिक सूची) काताकाना या हिरागाना, और इस आदमी के अंतर्गत आते हैं "や" या "ヤ"।

3

संक्षिप्त उत्तर यह है कि: समकक्ष कटाकाना (マ) प्राप्त करने के लिए आप हिरागाना (ま) के यूनिकोड मान में 96 जोड़ते हैं।

आप यह निर्धारित कर सकते हैं कि कोई वर्ण हिरागाना है यह जांच कर कि यह यूनिकोड मान 3040-309F की सीमा में आता है।

दुर्भाग्यवश, जैसा कि नूह का उल्लेख है, कई नामों कांजी का उपयोग करके वर्तनी की जाती है: प्रत्येक 40,000 वर्णों का वर्णमाला हरिगाना समकक्षों के साथ और उनके आसपास के कई प्रासंगिक हैं। यदि आप उन लोगों का समर्थन करना चाहते हैं, तो आपको आपकी सहायता के लिए एक जापानी भाषा लाइब्रेरी की तलाश करनी होगी।

एफवाईआई, कटकाना को कभी-कभी कैपिटल अक्षरों का प्रतिनिधित्व करने के लिए उपयोग किया जाता है ताकि वे उनके उपयोग को समझा सकें। (मेट्रो के लोअरकेस वरीयता को देखते हुए, मैंने कटकाना को बेहतर फिट माना होगा)।

const int KatakanaStartCode = 0x30A0; 
const int HiraganaStartCode = 0x3040; 
const int HiraganaEndCode = 0x309F; 

private char GetGroupChar(string name) 
{ 
    // Check for null/blank 
    // Check for numbers, etc 

    char firstChar = name[0]; 
    int firstCharCode = (int)firstChar; 

    bool isHiragana = (HiraganaStartCode <= firstCharCode && 
     firstCharCode <= HiraganaEndCode); 

    if (isHiragana) 
    { 
     char katakanaChar = (char)(firstCharCode + 
      (KatakanaStartCode - HiraganaStartCode)); 

     return katakanaChar; 
    } 

    return Char.ToLowerInvariant(firstChar); 
} 

और फिर:

string name = "またな たなかあ"; 

char s = GetGroupChar(name); 

Debug.WriteLine(s); // マ 
+0

और फिर कोरियाई, चीनी, आदि जैसी अन्य भाषाओं के लिए मुझे अपने समूह तर्क को समझना है? जो फोन ओएस कैसे करता है उससे मेल नहीं खा सकता है? उम्मीद है कि माइक्रोसॉफ्ट किसी प्रकार का संपर्क पिकर जारी करता है जिसने इसे बनाया है। – bkaid

+0

आपकी धारणा सही है।यह ऐसी पुस्तकालय के लिए चारों ओर देखने लायक हो सकता है जो इस तरह की चीज़ को संभालता है। –

संबंधित मुद्दे