اذهب إلى المحتوى

السؤال

نشر (معدل)

السلام عليكم 

عندما اقوم بإدخال نص عربي مثلا : عبدالله 

أريد أن يقوم البرنامج بكتابة الاسم مرة أخرى ولكن باللغة الانجليزية ليصبح : Abdullah

مثال آخر: محمد - Mohammad 

يعني بمجرد ادخال الاسم العربي يقوم البرنامج بتحويله الى نص انجليزي 

اريد الكود وليس برنامج exe

ارجو المساعدة 

بيئة العمل : C# , win form

تم التعديل في بواسطة عبدالله الناصري
خطأ املائي

Recommended Posts

  • 0
نشر

وعليكم السلام ورحمة الله.

اخي الكريم بإمكانك عمل Mapping Table، اي كل قابل كل حرف انجليزي بالحرف أو الاحرف العربية. ثم تقوم بالمرور على احرف الكلمة الانجليزية وتستبدل كل حرف انجليزي بمقابله العربي.

مثال: افرض ان Mapping Table بالشكل التالي:

a       ا

b        ب

c         س

d         د

...

h          ح

m         م

...

طبعا يمكن تخزين هذه الجدول ضمن Dictionary<String, String>

 

بالتوفيق،،،

  • 0
نشر
بتاريخ 6 ساعات قال طارق جهاد:

وعليكم السلام ورحمة الله.

اخي الكريم بإمكانك عمل Mapping Table، اي كل قابل كل حرف انجليزي بالحرف أو الاحرف العربية. ثم تقوم بالمرور على احرف الكلمة الانجليزية وتستبدل كل حرف انجليزي بمقابله العربي.

مثال: افرض ان Mapping Table بالشكل التالي:

a       ا

b        ب

c         س

d         د

...

h          ح

m         م

...

طبعا يمكن تخزين هذه الجدول ضمن Dictionary<String, String>

 

بالتوفيق،،،

كيف طريقة الـ mapping table

هل من توضيح مشكورا؟

وهل ترى ان اقوم بتنفيذ لك بجدولين في قاعدة البيانات ؟

  • 0
نشر

لا تحتاج لقاعدة بيانات.

انا اعطيك حل بسيط، يمكنك تطوير المثال واستخدام الحركات الاعرابية في انتاج اسماء اكثر مقاربة للحقيقة:

        static void Main(string[] args)
        {
            Dictionary<string, string> mappingTable = new Dictionary<string, string>();
            mappingTable.Add("ا", "a");
            mappingTable.Add("أ", "a");
            mappingTable.Add("إ", "e");
            mappingTable.Add("آ", "a");
            mappingTable.Add("ع", "a");
            mappingTable.Add("ب", "b");
            mappingTable.Add("د", "d");
            mappingTable.Add("ل", "l");
            mappingTable.Add("ه", "h");
            mappingTable.Add("ح", "h");


            string name = Console.ReadLine();
            string englishName = "";
            foreach (char c in name)
            {
                englishName += mappingTable[c.ToString()];
            }

            Console.Write(name + " => " + englishName);
        }

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...