تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[تم الحل] مشكلة فى تحويل مشروع تفقيط من vb.net الى #C
#1
السلام عليكم 
عندى مشكلة وهى تحويل مشروع تفقيط من vb.net الى #C
هذا هو  الكلاس اللى داخل المشروع

كود :
Module Mony_Count
   Function NoToTxt(ByVal TheNo As Double, ByVal MyCur As String, ByVal MySubCur As String) As String
       Dim MyArry1(0 To 9) As String
       Dim MyArry2(0 To 9) As String
       Dim MyArry3(0 To 9) As String
       Dim MyNo As String = ""
       Dim GetNo As String = ""
       Dim RdNo As String = ""
       Dim My100 As String = ""
       Dim My10 As String = ""
       Dim My1 As String = ""
       Dim My11 As String = ""
       Dim My12 As String = ""
       Dim GetTxt As String = ""
       Dim Mybillion As String = ""
       Dim MyMillion As String = ""
       Dim MyThou As String = ""
       Dim MyHun As String = ""
       Dim MyFraction As String = ""
       Dim MyAnd As String = ""
       Dim i As Integer
       Dim ReMark As String = ""


       If TheNo > 999999999999.99 Then

       End If


       If TheNo = 0 Then
           NoToTxt = "صفر"
           Exit Function
       End If

       MyAnd = " و"
       MyArry1(0) = ""
       MyArry1(1) = "مائة"
       MyArry1(2) = "مائتان"
       MyArry1(3) = "ثلاثمائة"
       MyArry1(4) = "أربعمائة"
       MyArry1(5) = "خمسمائة"
       MyArry1(6) = "ستمائة"
       MyArry1(7) = "سبعمائة"
       MyArry1(8) = "ثمانمائة"
       MyArry1(9) = "تسعمائة"

       MyArry2(0) = ""
       MyArry2(1) = " عشر"
       MyArry2(2) = "عشرون"
       MyArry2(3) = "ثلاثون"
       MyArry2(4) = "أربعون"
       MyArry2(5) = "خمسون"
       MyArry2(6) = "ستون"
       MyArry2(7) = "سبعون"
       MyArry2(8) = "ثمانون"
       MyArry2(9) = "تسعون"

       MyArry3(0) = ""
       MyArry3(1) = "واحد"
       MyArry3(2) = "اثنان"
       MyArry3(3) = "ثلاثة"
       MyArry3(4) = "أربعة"
       MyArry3(5) = "خمسة"
       MyArry3(6) = "ستة"
       MyArry3(7) = "سبعة"
       MyArry3(8) = "ثمانية"
       MyArry3(9) = "تسعة"
       '======================
       GetNo = Format(TheNo, "000000000000.00")

       i = 0
       Do While i < 15

           If i < 12 Then
               MyNo = Mid$(GetNo, i + 1, 3)
           Else
               MyNo = "0" + Mid$(GetNo, i + 2, 2)
           End If

           If (Mid$(MyNo, 1, 3)) > 0 Then

               RdNo = Mid$(MyNo, 1, 1)
               My100 = MyArry1(RdNo)
               RdNo = Mid$(MyNo, 3, 1)
               My1 = MyArry3(RdNo)
               RdNo = Mid$(MyNo, 2, 1)
               My10 = MyArry2(RdNo)

               If Mid$(MyNo, 2, 2) = 11 Then My11 = "إحدى عشر"
               If Mid$(MyNo, 2, 2) = 12 Then My12 = "إثنى عشر"
               If Mid$(MyNo, 2, 2) = 10 Then My10 = "عشرة"

               If ((Mid$(MyNo, 1, 1)) > 0) And ((Mid$(MyNo, 2, 2)) > 0) Then My100 = My100 + MyAnd
               If ((Mid$(MyNo, 3, 1)) > 0) And ((Mid$(MyNo, 2, 1)) > 1) Then My1 = My1 + MyAnd

               GetTxt = My100 + My1 + My10

               If ((Mid$(MyNo, 3, 1)) = 1) And ((Mid$(MyNo, 2, 1)) = 1) Then
                   GetTxt = My100 + My11
                   If ((Mid$(MyNo, 1, 1)) = 0) Then GetTxt = My11
               End If

               If ((Mid$(MyNo, 3, 1)) = 2) And ((Mid$(MyNo, 2, 1)) = 1) Then
                   GetTxt = My100 + My12
                   If ((Mid$(MyNo, 1, 1)) = 0) Then GetTxt = My12
               End If

               If (i = 0) And (GetTxt <> "") Then
                   If ((Mid$(MyNo, 1, 3)) > 10) Then
                       Mybillion = GetTxt + " مليار"
                   Else
                       Mybillion = GetTxt + " مليارات"
                       If ((Mid$(MyNo, 1, 3)) = 2) Then Mybillion = " مليار"
                       If ((Mid$(MyNo, 1, 3)) = 2) Then Mybillion = " ملياران"
                   End If
               End If

               If (i = 3) And (GetTxt <> "") Then

                   If ((Mid$(MyNo, 1, 3)) > 10) Then
                       MyMillion = GetTxt + " مليون"
                   Else
                       MyMillion = GetTxt + " ملايين"
                       If ((Mid$(MyNo, 1, 3)) = 1) Then MyMillion = " مليون"
                       If ((Mid$(MyNo, 1, 3)) = 2) Then MyMillion = " مليونان"
                   End If
               End If

               If (i = 6) And (GetTxt <> "") Then
                   If ((Mid$(MyNo, 1, 3)) > 10) Then
                       MyThou = GetTxt + " ألف"
                   Else
                       MyThou = GetTxt + " آلاف"
                       If ((Mid$(MyNo, 3, 1)) = 1) Then MyThou = " ألف"
                       If ((Mid$(MyNo, 3, 1)) = 2) Then MyThou = " ألفان"
                   End If
               End If

               If (i = 9) And (GetTxt <> "") Then MyHun = GetTxt
               If (i = 12) And (GetTxt <> "") Then MyFraction = GetTxt
           End If

           i = i + 3
       Loop

       If (Mybillion <> "") Then
           If (MyMillion <> "") Or (MyThou <> "") Or (MyHun <> "") Then Mybillion = Mybillion + MyAnd
       End If

       If (MyMillion <> "") Then
           If (MyThou <> "") Or (MyHun <> "") Then MyMillion = MyMillion + MyAnd
       End If

       If (MyThou <> "") Then
           If (MyHun <> "") Then MyThou = MyThou + MyAnd
       End If

       If MyFraction <> "" Then
           If (Mybillion <> "") Or (MyMillion <> "") Or (MyThou <> "") Or (MyHun <> "") Then
               NoToTxt = ReMark + Mybillion + MyMillion + MyThou + MyHun + " " + MyCur + MyAnd + MyFraction + " " + MySubCur
           Else
               NoToTxt = ReMark + MyFraction + " " + MySubCur
           End If
       Else
           NoToTxt = ReMark + Mybillion + MyMillion + MyThou + MyHun + " " + MyCur
       End If
   End Function
End Module


بتمني من اى حد عنده خبره يحولهولي الى سي شارب
انا كمان رفعت المشروع للي حابب يشوفه ويعدله
شكراً مقدماً


الملفات المرفقة
.zip   NumberToWords.zip (الحجم : 82.09 ك ب / التحميلات : 37)
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
[تم الحل] مشكلة فى تحويل مشروع تفقيط من vb.net الى #C - بواسطة maxruined - 16-07-19, 03:57 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] مشكلة في مؤشر بايثون reem.564 0 262 08-05-25, 05:51 AM
آخر رد: reem.564
  [C#.NET] مشكلة عند عمل ال dataSet لعمل تقرير باستخدام ال Report Viewer ؟ Ashraf Baraka 0 322 04-12-24, 02:21 AM
آخر رد: Ashraf Baraka
  [C#.NET] مساعدة في مشكلة سورس كود kamel1978 5 1,011 30-11-24, 02:32 PM
آخر رد: altoki939
  مشكلة في اتصال سيد أحمد 2 434 24-09-24, 01:34 AM
آخر رد: Taha Okla
  [C#.NET] مشكلة حجم الادوات عند برمجة واجهات الويندوز Ahmed Alsharafi 1 463 03-08-24, 08:50 AM
آخر رد: WAEL ABED
  [سؤال] مشروع بسيط بالذكاء الاصطناعي بلغة python alhlale 1 523 10-05-24, 09:15 AM
آخر رد: fdg_gxv
Star [سؤال] مشكلة في السحب والأفلات داخل الفورم عند التصميم reduouo 1 622 02-03-24, 02:39 AM
آخر رد: Taha Okla
  مشكلة في المشاركة الدولية او خارج الشبكة issamsaid 1 928 22-11-23, 03:03 AM
آخر رد: HASAN6.0
  [تم الحل] مشكلة الاتصال بقاعده بيانات SQL على الشبكة maxruined 5 5,185 08-11-23, 01:00 AM
آخر رد: الحزين اليماني
  [سؤال] احتاج الى مساعدة فى تعديل مشروع خاص C# وقاعدة البيانات SQL Server كتكوت المصري 1 885 15-08-23, 02:02 AM
آخر رد: WAEL ABED

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم