public class IntToSmallChineseNumber
{
public static String ToCH(int intInput)
{
string si = intInput.ToString();
string sd = "";
if (si.Length == 1) // 個
{
sd += GetCH(intInput);
return sd;
}
else if (si.Length == 2)// 十
{
if (si.Substring(0, 1).Equals("1"))
sd += "十";
else
sd += (GetCH(intInput / 10) + "十");
sd += ToCH(intInput % 10);
}
else if (si.Length == 3)// 百
{
sd += (GetCH(intInput / 100) + "百");
if ((intInput % 100).ToString().Length < 2)
sd += "零";
sd += ToCH(intInput % 100);
}
else if (si.Length == 4)// 千
{
sd += (GetCH(intInput / 1000) + "千");
if ((intInput % 1000).ToString().Length < 3)
sd += "零";
sd += ToCH(intInput % 1000);
}
else if (si.Length == 5)// 萬
{
sd += (GetCH(intInput / 10000) + "万");
if ((intInput % 10000).ToString().Length < 4)
sd += "零";
sd += ToCH(intInput % 10000);
}
return sd;
}
private static String GetCH(int input)
{
String sd = "";
switch (input)
{
case 1:
sd = "一";
break;
case 2:
sd = "二";
break;
case 3:
sd = "三";
break;
case 4:
sd = "四";
break;
case 5:
sd = "五";
break;
case 6:
sd = "六";
break;
case 7:
sd = "七";
break;
case 8:
sd = "八";
break;
case 9:
sd = "九";
break;
default:
break;
}
return sd;
}
}