วันพุธที่ 18 มีนาคม พ.ศ. 2558

แปลงตัวเลขเป็นตัวหนังสือ c# - Convert Number Thai C Shap


public static string cv(string num){
     
            string[][] th_num = new string[3][];
            string[] th_digit = { "", "สิบ", "ร้อย", "พัน", "หมื่น", "แสน", "ล้าน" }; 
 
            th_num[0] = new string[10] { "", "หนึ่ง", "สอง", "สาม", "สี่", "ห้า", "หก", "เจ็ด", "แปด", "เก้า" };
            th_num[1] = new string[2] { "หนึ่ง", "เอ็ด" };
            th_num[2] = new string[2] { "สอง", "ยี่" };

            int ln = num.Length;

            string t = "";
            for (int i = ln; i > 0; i--) {
                var x = i - 1;
                 var n = Convert.ToInt32(num.Substring(ln - i, 1));
                 var digit = x % 6;
                if (n != 0) {
                    if (n == 1) {
                        t += (digit == 1) ? "" : th_num[1][digit == 0 ? 1 : 0];
                    } else if (n == 2) {
                        t += th_num[2][digit == 1 ? 1 : 0];
                    } else {
                        t += th_num[0][n];
                    }
                    t += th_digit[(digit == 0 && x > 0 ? 6 : digit)];
                } else {
                    t += th_digit[digit == 0 && x > 0 ? 6 : 0];
                }
            }
            return t;
        }
มาดูส่วนวิธีเรียกใช้งานบ้าง
 class Program
    {
 static void Main(string[] args)
        {
            var num = "111,111,111,111,111.11";

            var data = Convert.ToDecimal(num).ToString().Split('.');
            string dic = "";
            if (cv(data[1]) == "") { dic = ""; } else { dic = cv(data[1]) + "สตางค์"; };
            string convert = cv(data[0]) + "บาท" + dic ;

            Console.WriteLine(convert);
            System.Console.ReadKey();
        }
}
*** ผมไม่ได้คิดเองน่ะครับ copy มาจาก ท่านนี้ Chaidhanan ใน thaicreate แต่ของเก่าเขียนไว้ด้วย (PHP) ผมเลยเอาปรับใช้ ใน c# นิดหนึ่ง http://www.thaicreate.com/community/c-asp-net-convert-money-number-to-thai-text.html

ไม่มีความคิดเห็น:

แสดงความคิดเห็น

การติดตั้ง SAP ABAP

ครั้งแรกผมว่าจะสอนวิธีติดตั้งเอง แต่ก็กลัวเรื่อง ลิขสิทธิ์ (เอ๊ะ หรือว่าคิดมากไปเอง)  เอาเป็นว่า ไปดูเว็บฝรั่งก็ได้น่ะ หรือไม่ก็ youtube ...