public static string ChuyenTienSoThanhChuVN(decimal SoTien, char sSeperate) { string ChuoiConSo, PhanNguyen, PhanThapPhan; string ChuoiTienChinhThuc = string.Empty; ChuoiConSo = PhanNguyen = PhanThapPhan = string.Empty; string[] ChuoiTach; string[] DonViTien = { "tỷ", "triệu", "nghin", "đồng" }; string[] ChuoiChuSo = { "không", "một", "hai", "ba", "bốn", "năm", "sáu", "bảy", "tám", "chín" }; string[] ChuoiChuSoDonVi = { "không", "mốt", "hai", "ba", "bốn", "lăm", "sáu", "bảy", "tám", "chín" }; string[] ChuoiChuSoChuc = { "không", "mười", "hai mươi", "ba mươi", "bốn mươi", "năm mươi", "sáu mươi", "bảy mươi", "tám mươi", "chín mươi" }; ChuoiConSo = SoTien.ToString("###############.00"); ChuoiTach = ChuoiConSo.Split(sSeperate); PhanNguyen = ChuoiTach.GetValue(0).ToString(); if (ChuoiTach.Length >= 2) { PhanThapPhan = ChuoiTach.GetValue(1).ToString(); } for (; PhanNguyen.Length < 12; PhanNguyen = "0" + PhanNguyen) { ; } for (int i = 0; i < 4; i++) { string ChuoiCon = string.Empty; string Tram, Chuc, DonVi; Tram = Chuc = DonVi = string.Empty; ChuoiCon = PhanNguyen.Substring(3 * i, 3); if (Convert.ToDouble(ChuoiCon) > 0) { if (Convert.ToDouble(ChuoiCon.Substring(0, 1)) > 0) { Tram = String.Format("{0} trăm", ChuoiChuSo.GetValue(Convert.ToInt16(ChuoiCon.Substring(0, 1)))); if (ChuoiCon.Substring(1, 1) == "0") { if (ChuoiCon.Substring(2, 1) != "0") { Chuc = String.Format("lẻ {0}", ChuoiChuSo.GetValue(Convert.ToInt16(ChuoiCon.Substring(2, 1)))); //chuoi so thuong } } else { if (ChuoiCon.Substring(1, 2) == "11") { Chuc = "mười một"; } else { if (ChuoiCon.Substring(2, 1) != "0") { DonVi = ChuoiChuSoDonVi.GetValue(Convert.ToInt16(ChuoiCon.Substring(2, 1))).ToString(); // chuoi hang don vi } Chuc = ChuoiChuSoChuc.GetValue(Convert.ToInt16(ChuoiCon.Substring(1, 1))).ToString(); } } } else { if (ChuoiCon.Substring(1, 1) != "0") { if (ChuoiCon.Substring(1, 2) == "11") { Chuc = "mười một"; } else { if (ChuoiCon.Substring(2, 1) != "0") { DonVi = ChuoiChuSoDonVi.GetValue(Convert.ToInt16(ChuoiCon.Substring(2, 1))).ToString(); // chuoi hang don vi } Chuc = ChuoiChuSoChuc.GetValue(Convert.ToInt16(ChuoiCon.Substring(1, 1))).ToString();; } } else { //chuoi so thuong if (ChuoiTienChinhThuc != string.Empty) { DonVi = "lẻ " + ChuoiChuSo.GetValue(Convert.ToInt16(ChuoiCon.Substring(2, 1))).ToString(); } else { DonVi = ChuoiChuSo.GetValue(Convert.ToInt16(ChuoiCon.Substring(2, 1))).ToString(); } } } ChuoiTienChinhThuc = String.Format("{0} {1} {2} {3} {4}", ChuoiTienChinhThuc, Tram, Chuc, DonVi, DonViTien.GetValue(i)); } } ChuoiTienChinhThuc = ChuoiTienChinhThuc.Trim(); if (ChuoiTienChinhThuc.Length > 1) { ChuoiTienChinhThuc = ChuoiTienChinhThuc.Substring(0, 1).ToUpper() + ChuoiTienChinhThuc.Substring(1, ChuoiTienChinhThuc.Length - 1); } return(ChuoiTienChinhThuc); }
private static string DocBo9ChuSo(string sBo9SoCanDoc, string sGroupSeperate, bool bLaDauChuoi) { string ChuoiConSo, PhanNguyen; string ChuoiTienChinhThuc = string.Empty; ChuoiConSo = PhanNguyen = string.Empty;//PhanThapPhan = string.Empty; string[] ChuoiTach; //string[] TenLop = { "tỷ", "triệu", "nghìn", "đồng" }; //string[] TenLop = { "tỷ", "triệu", "nghìn", "" }; // string[] TenLop = { "triệu", "nghìn", "" }; string[] ChuoiChuSo = { "không", "một", "hai", "ba", "bốn", "năm", "sáu", "bảy", "tám", "chín" }; string[] ChuoiChuSoDonVi = { "không", "mốt", "hai", "ba", "bốn", "lăm", "sáu", "bảy", "tám", "chín" }; string[] ChuoiChuSoChuc = { "không", "mười", "hai mươi", "ba mươi", "bốn mươi", "năm mươi", "sáu mươi", "bảy mươi", "tám mươi", "chín mươi" }; //ChuoiConSo = sBo9SoCanDoc.ToString("###############.00"); ChuoiTach = sBo9SoCanDoc.Split(sGroupSeperate.ToCharArray()); PhanNguyen = ChuoiTach.GetValue(0).ToString(); //PhanThapPhan = ChuoiTach.GetValue(1).ToString(); for (; PhanNguyen.Length < 9; PhanNguyen = "0" + PhanNguyen) { ; } for (int i = 0; i < TenLop.Length; i++) { string ChuoiCon = string.Empty; string Tram, Chuc, DonVi; Tram = Chuc = DonVi = string.Empty; ChuoiCon = PhanNguyen.Substring(3 * i, 3); if (Convert.ToDouble(ChuoiCon) > 0) { if (Convert.ToDouble(ChuoiCon.Substring(0, 1)) > 0) { Tram = String.Format("{0} trăm", ChuoiChuSo.GetValue(Convert.ToInt16(ChuoiCon.Substring(0, 1)))); if (ChuoiCon.Substring(1, 1) == "0") { if (ChuoiCon.Substring(2, 1) != "0") { Chuc = String.Format("lẻ {0}", ChuoiChuSo.GetValue(Convert.ToInt16(ChuoiCon.Substring(2, 1)))); //chuoi so thuong } } else { if (ChuoiCon.Substring(1, 2) == "11") { Chuc = "mười một"; } else { if (ChuoiCon.Substring(2, 1) != "0") { DonVi = ChuoiChuSoDonVi.GetValue(Convert.ToInt16(ChuoiCon.Substring(2, 1))).ToString(); // chuoi hang don vi } Chuc = ChuoiChuSoChuc.GetValue(Convert.ToInt16(ChuoiCon.Substring(1, 1))).ToString(); } } } else { if (ChuoiTienChinhThuc != "") { Tram = "không trăm"; } else { if (bLaDauChuoi == false) { Tram = "không trăm"; } } if (ChuoiCon.Substring(1, 1) != "0") { if (ChuoiCon.Substring(1, 2) == "11") { Chuc = "mười một"; } else { if (ChuoiCon.Substring(2, 1) != "0") { DonVi = ChuoiChuSoDonVi.GetValue(Convert.ToInt16(ChuoiCon.Substring(2, 1))).ToString(); // chuoi hang don vi } Chuc = ChuoiChuSoChuc.GetValue(Convert.ToInt16(ChuoiCon.Substring(1, 1))).ToString();; } } else { DonVi = ChuoiChuSo.GetValue(Convert.ToInt16(ChuoiCon.Substring(2, 1))).ToString(); //chuoi so thuong if (ChuoiTienChinhThuc != string.Empty) { DonVi = String.Format("lẻ {0}", DonVi); } } } ChuoiTienChinhThuc = String.Format("{0} {1} {2} {3} {4}", ChuoiTienChinhThuc, Tram, Chuc, DonVi, TenLop.GetValue(i)); } } return(ChuoiTienChinhThuc.Replace(" ", " ")); }