C#阿拉伯数字转换为中文大写
2008-12-01 15:52
573 查看
class ConvertNumber
{
#region 大写、单位数组定义
private static string[] cstr ={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖" };
private static string[] wstr ={ "", "", "拾", "佰", "仟", "萬", "拾", "佰", "仟", "億", "拾", "佰", "仟" };
private static string[] lcstr ={ "〇", "一", "二", "三", "四", "五", "六", "七", "八", "九" };
#endregion
/// <summary>
/// 转换方法
/// </summary>
/// <param name="str">输入参数为阿拉伯数字</param>
/// <returns>返回字符串为中文大写</returns>
public static string ConvertInt(string str)
{
int len = str.Length;//获取字符串长度
int i;
string tmpstr, rstr;//rstr为返回的字符串
rstr = "";
//执行循环逐位分解字符串
for (i = 1; i <= len; i++)
{
tmpstr = str.Substring(len - i, 1);
rstr = string.Concat(cstr[Int32.Parse(tmpstr)] + wstr[i], rstr);
}
//当某位数值为零时进行替换
rstr = rstr.Replace("拾零", "拾");
rstr = rstr.Replace("零拾", "零");
rstr = rstr.Replace("零佰", "零");
rstr = rstr.Replace("零仟", "零");
rstr = rstr.Replace("零萬", "萬");
//当位数连续为零时进行替换
for (i = 1; i <= 6; i++)
rstr = rstr.Replace("零零", "零");
rstr = rstr.Replace("零萬", "零");
rstr = rstr.Replace("零億", "億");
rstr = rstr.Replace("零零", "零");
return rstr;
}
public static string ConvertDate(string str)
{
string tempStr=string .Empty ;
for (int i = 0; i < str.Length; i++)
{
tempStr = tempStr + lcstr[Int32.Parse(str.Substring(i, 1))];
}
return tempStr ;
}
}
{
#region 大写、单位数组定义
private static string[] cstr ={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖" };
private static string[] wstr ={ "", "", "拾", "佰", "仟", "萬", "拾", "佰", "仟", "億", "拾", "佰", "仟" };
private static string[] lcstr ={ "〇", "一", "二", "三", "四", "五", "六", "七", "八", "九" };
#endregion
/// <summary>
/// 转换方法
/// </summary>
/// <param name="str">输入参数为阿拉伯数字</param>
/// <returns>返回字符串为中文大写</returns>
public static string ConvertInt(string str)
{
int len = str.Length;//获取字符串长度
int i;
string tmpstr, rstr;//rstr为返回的字符串
rstr = "";
//执行循环逐位分解字符串
for (i = 1; i <= len; i++)
{
tmpstr = str.Substring(len - i, 1);
rstr = string.Concat(cstr[Int32.Parse(tmpstr)] + wstr[i], rstr);
}
//当某位数值为零时进行替换
rstr = rstr.Replace("拾零", "拾");
rstr = rstr.Replace("零拾", "零");
rstr = rstr.Replace("零佰", "零");
rstr = rstr.Replace("零仟", "零");
rstr = rstr.Replace("零萬", "萬");
//当位数连续为零时进行替换
for (i = 1; i <= 6; i++)
rstr = rstr.Replace("零零", "零");
rstr = rstr.Replace("零萬", "零");
rstr = rstr.Replace("零億", "億");
rstr = rstr.Replace("零零", "零");
return rstr;
}
public static string ConvertDate(string str)
{
string tempStr=string .Empty ;
for (int i = 0; i < str.Length; i++)
{
tempStr = tempStr + lcstr[Int32.Parse(str.Substring(i, 1))];
}
return tempStr ;
}
}
相关文章推荐
- 使用C#实现阿拉伯数字到大写中文的转换-第二种方法
- (转)C# 人民币大小写转换,将阿拉伯数字转换为中文的大写人民币
- 一个将阿拉伯数字转换成中文大写的好算法【原创】(C#)
- 一个将阿拉伯数字转换成中文大写的算法[C#]
- C# 人民币大小写转换,将阿拉伯数字转换为中文的大写人民币
- 关于C#实现阿拉伯数字转换成中文大写
- C#写的将阿拉伯数字转换成中文大写金额代码
- C#实现阿拉伯数字到大写中文的转换
- C#实现阿拉伯数字(小写金额)到大写中文(大写金额)的转换
- C#实现阿拉伯数字(小写金额)到大写中文(大写金额)的转换
- 使用C#实现阿拉伯数字到大写中文的转换
- C#实现的【阿拉伯数字转换成中文大写金额】代码(原创)
- C# 将阿拉伯数字转换成中文大写(转载)
- C# 实现将阿拉伯数字转换成中文大写金额
- 使用C#实现阿拉伯数字到大写中文的转换-第二种方法
- C#实现的【阿拉伯数字转换成中文大写金额】
- 使用C#实现阿拉伯数字到大写中文的转换
- 使用C#实现阿拉伯数字到大写中文的转换
- 用C#将任意位整数阿拉伯数字转换成中文大写
- C#阿拉伯数字金额转换为中文大写金额