Search
Latest topics
Hàm chuyển đổi từ số thập phân (decimal) sang chữ
Page 1 of 1
Hàm chuyển đổi từ số thập phân (decimal) sang chữ
public static string DecimalToString(decimal number)
{
string s = number.ToString("#");
string[] so = new string[] { "không", "một", "hai", "ba", "bốn", "năm", "sáu", "bảy", "tám", "chín" };
string[] hang = new string[] { "", "nghìn", "triệu", "tỷ" };
int i, j, donvi, chuc, tram;
string str = " ";
bool booAm = false;
decimal decS = 0;
try
{
decS = Convert.ToDecimal(s.ToString());
}
catch { }
if (decS < 0)
{
decS = -decS;
s = decS.ToString();
booAm = true;
}
i = s.Length;
if (i == 0)
str = so[0] + str;
else
{
j = 0;
while (i > 0)
{
donvi = Convert.ToInt32(s.Substring(i - 1, 1));
i--;
if (i > 0)
chuc = Convert.ToInt32(s.Substring(i - 1, 1));
else
chuc = -1;
i--;
if (i > 0)
tram = Convert.ToInt32(s.Substring(i - 1, 1));
else
tram = -1;
i--;
if ((donvi > 0) || (chuc > 0) || (tram > 0) || (j == 3))
str = hang[j] + str;
j++;
if (j > 3) j = 1;
if ((donvi == 1) && (chuc > 1))
str = "một " + str;
else
{
if ((donvi == 5) && (chuc > 0))
str = "lăm " + str;
else if (donvi > 0)
str = so[donvi] + " " + str;
}
if (chuc < 0)
break;
else
{
if ((chuc == 0) && (donvi > 0)) str = "lẻ " + str;
if (chuc == 1) str = "mười " + str;
if (chuc > 1) str = so[chuc] + " mươi " + str;
}
if (tram < 0) break;
else
{
if ((tram > 0) || (chuc > 0) || (donvi > 0)) str = so[tram] + " trăm " + str;
}
str = " " + str;
}
}
if (booAm) str = "Âm " + str;
return str;
}
{
string s = number.ToString("#");
string[] so = new string[] { "không", "một", "hai", "ba", "bốn", "năm", "sáu", "bảy", "tám", "chín" };
string[] hang = new string[] { "", "nghìn", "triệu", "tỷ" };
int i, j, donvi, chuc, tram;
string str = " ";
bool booAm = false;
decimal decS = 0;
try
{
decS = Convert.ToDecimal(s.ToString());
}
catch { }
if (decS < 0)
{
decS = -decS;
s = decS.ToString();
booAm = true;
}
i = s.Length;
if (i == 0)
str = so[0] + str;
else
{
j = 0;
while (i > 0)
{
donvi = Convert.ToInt32(s.Substring(i - 1, 1));
i--;
if (i > 0)
chuc = Convert.ToInt32(s.Substring(i - 1, 1));
else
chuc = -1;
i--;
if (i > 0)
tram = Convert.ToInt32(s.Substring(i - 1, 1));
else
tram = -1;
i--;
if ((donvi > 0) || (chuc > 0) || (tram > 0) || (j == 3))
str = hang[j] + str;
j++;
if (j > 3) j = 1;
if ((donvi == 1) && (chuc > 1))
str = "một " + str;
else
{
if ((donvi == 5) && (chuc > 0))
str = "lăm " + str;
else if (donvi > 0)
str = so[donvi] + " " + str;
}
if (chuc < 0)
break;
else
{
if ((chuc == 0) && (donvi > 0)) str = "lẻ " + str;
if (chuc == 1) str = "mười " + str;
if (chuc > 1) str = so[chuc] + " mươi " + str;
}
if (tram < 0) break;
else
{
if ((tram > 0) || (chuc > 0) || (donvi > 0)) str = so[tram] + " trăm " + str;
}
str = " " + str;
}
}
if (booAm) str = "Âm " + str;
return str;
}
Similar topics
» Chuyển FAT, FAT 32 sang NTFS
» Hàm chuyển đổi chuỗi ký tự có dấu thành không dấu C#
» Dữ liệu ở ổ đĩa D của mình bây giờ các file chữ từ từ biến thành màu xanh dương gần hết, còn mấy file nữa chắc cũng sắp chuyển sang màu xanh hết, không biết là tại virút hay bị sao vậy các bạn?
» Tam thập lục kế – 36 Kế sách – Binh pháp Tôn Tử
» Chuyện Tình Assembly
» Hàm chuyển đổi chuỗi ký tự có dấu thành không dấu C#
» Dữ liệu ở ổ đĩa D của mình bây giờ các file chữ từ từ biến thành màu xanh dương gần hết, còn mấy file nữa chắc cũng sắp chuyển sang màu xanh hết, không biết là tại virút hay bị sao vậy các bạn?
» Tam thập lục kế – 36 Kế sách – Binh pháp Tôn Tử
» Chuyện Tình Assembly
Page 1 of 1
Permissions in this forum:
You cannot reply to topics in this forum
Thu Aug 23, 2012 5:38 am by Admin
» Tuyệt kỹ cua giai
Thu Aug 23, 2012 5:36 am by Admin
» NETCAT.........
Mon Aug 13, 2012 6:35 am by Admin
» Bảo mật CSDL bằng phương pháp mã hóa.
Tue Apr 17, 2012 10:04 pm by Admin
» Hàm mã hóa MD5 bằng JavaScript
Tue Apr 17, 2012 10:03 pm by Admin
» Giá của món quà
Fri Apr 13, 2012 6:01 am by Admin
» Sẽ chỉ yêu ai?
Fri Apr 13, 2012 6:01 am by Admin
» Cách đọc bảng chữ cái!
Thu Apr 12, 2012 10:37 pm by Admin
» Gắn trojan, keylog, virus vào website, forum
Tue Apr 10, 2012 1:14 am by Admin