تصف هذه المقالة استخدام الأحرف الصينية إلى Pinyin4J في Java. شاركه للرجوع إليه ، على النحو التالي:
يعد تحويل الأحرف الصينية إلى Pinyin مشكلة شائعة جدًا في التنمية اليومية. على سبيل المثال ، في عام 12306 الرائع ، إذا أدخلت "WH" في اسم المكان ، فسترى أسماء أماكن مثل "Wuhan" و "Wuhu" و "Weihai" ، وإذا أدخلت "Wuhu" ، فسترى "Wuhu".
تحصل Java على Pinyin من الأحرف الصينية ، ويمكن لمكتبة Pinyin4J حل هذه المشكلة بشكل جيد.
تنزيل العنوان: http://sourceforge.net/projects/pinyin4j/
قم بتنزيله وفك ضغطه ، هناك pinyin4j-2.5.0.jar Inside ، فقط استخدم هذه المكتبة.
الشخصيات الصينية إلى بينين:
نسخة الكود كما يلي: String [] pinyin = pinyinhelper.tohanyupinyInstringArray ('re-rre-re-) ؛
السطر المذكور أعلاه من الكود هو تحويل حرف صيني واحد إلى pinyin ، مثل كلمة "ثقيلة" ، والتي تُرجع مجموعة من نوع السلسلة:
"Zhong4"
"chong2"
"金" هي حرف متعدد الفقرة ، ومجموعة الإرجاع من هذه الطريقة تحتوي على pinyin من جميع نطق هذه الشخصية. العدد الأخير من كل نطق هو النغمة (الأولى والثانية والثالثة والرابعة ، لا حاجة لشرح هذا).
ما سبق هو أسهل طريقة للحصول على شخصية صينية واحدة. يمكنك أيضًا استخدام hanyupinyinoutputformat لتنسيق التنسيق الذي يرجع بينيين.
hanyupinyinoutputformat format = new hanyupinyinoutputformat () ؛ // agrager: uppercase (Zhong) // loporcase: mallcase (Zhong) format.setCaseType (hanyupinyincaseType.lowercase) ؛ // بدون _tone: لا يوجد رمز زخرفي (zhong) // with_tone_number: 1-4. with_tone_mark: استخدم الرموز الصوتية مباشرة (مع with_u_unicode على خلاف ذلك غير طبيعي) (zhòng) format.setToneType (hanyupinyintoneType.with_tone_mark) ؛ // with_v: استخدام v لتمثيل ü (nv) // مع _ استخدم ü (nü) format.setvchartype (hanyupinyinvchartype.with_u_unicode) ؛ string [] pinyin = pinyinhelper.tohanyupinyinstringarray ('' re-rre-re-rre-re-rre-re-re-rre-re-re-re-re-rre-re-rre-re-re-re-re-re-re-re-re-re-re-re-rre- يعيد رئر راي راي رير رير رير رير رير رير رير رير رير رير رير رير رير رير رير رير رير رير رير رير رير رير e-re-re-re-re-rre-re-rre-re-re-re-re-re-re-re-re-re-re-re-rre-re-re-re-re-rre-re-re-rre-re-rre-re-rre-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re re re re re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-rre -re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re-re- التنسيق) ؛ tohanyupinyinstringarray إذا كانت الشخصية التي تم تمريرها ليست شخصية صينية ولا يمكن تحويلها إلى pinyin ، فستعود مباشرة.على الرغم من أن Pinyin4J مفيد للغاية ، إلا أنه لا يزال لديه قيود. يمكن أن يحصل الرمز أعلاه فقط على pinyin لحرف صيني واحد ، ولكن لا يمكن الحصول على pinyin للكلمة التي تحتوي على أحرف متعددة الفقرة. على سبيل المثال ، "Chongqing" ، من المستحيل تحديد ما إذا كان "Chongqing" أو "Zhongqing" ، ولا يمكن لـ Pinyin4J الحكم على نطق الشخصيات البوليفونية من خلال السياق.
لذلك ، عند الحصول على نطق كلمة تحتوي على أحرف متعددة الفصول ، يمكنك العودة إلى القائمة ، ويمكن الحكم على النطق الصحيح فقط واختياره يدويًا.
آمل أن يكون هذا المقال مفيدًا لبرمجة Java للجميع.