C# 将阿拉伯数字转换为大写中文的代码
本文导语: 为大家提供一段c#代码,实现将阿拉伯数字转换为大写的中文表示,有需要的朋友,不妨参考下。 1、代码 代码示例: using System; namespace ConsoleApp { /// /// 阿拉伯数字到大写中文的转换 /// 未对非法数字进行判别 /// 请调用...
为大家提供一段c#代码,实现将阿拉伯数字转换为大写的中文表示,有需要的朋友,不妨参考下。
1、代码
using System;
namespace ConsoleApp
{
///
/// 阿拉伯数字到大写中文的转换
/// 未对非法数字进行判别
/// 请调用NumToChn方法
/// site http://www.
///
public class NumFormat
{
public NumFormat()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
// 转换数字
private char ToNum(char x)
{
string strChnNames="零一二三四五六七八九";
string strNumNames="0123456789";
return strChnNames[strNumNames.IndexOf(x)];
}
// 转换万以下整数
private string ChangeInt(string x)
{
string[] strArrayLevelNames=new string[4] {"","十","百","千"};
string ret = "";
int i;
for (i=x.Length-1;i>=0;i--)
if (x[i] == '0')
ret = ToNum(x[i]) + ret;
else
ret = ToNum(x[i]) + strArrayLevelNames[x.Length-1-i] + ret;
while ((i=ret.IndexOf("零零"))!=-1)
ret=ret.Remove(i, 1);
if (ret[ret.Length-1]=='零' && ret.Length>1)
ret=ret.Remove(ret.Length-1,1);
if (ret.Length>=2 && ret.Substring(0,2)=="一十")
ret=ret.Remove(0,1);
return ret;
}
// 转换整数
private string ToInt(string x)
{
int len = x.Length;
string ret,temp;
if (len