将大写放到array,然后遍历小写,按一定顺序取出即可
解决方案 »
- 串口类的发送问题!
- 关于NumericUpDown控件的事件的问题,在线等!
- 为什么VS.NET2005调试时老调用GOOGLE搜索.请问如何解决这个问题?
- 请问,如何在datagridview 控件的单元格中,填充图片,就象在excle 中一样,插入图片的?
- 团队开发中,如何把两个模块整合到一起?急等
- 怎样释放C#内存,在线等
- 在web form里面有File Field可以实现浏览文件,在winForm里呢?
- WPF,弄不清楚逻辑焦点
- 问一个微软企业库DatabaseFactory的问题
- 页面记录传递,急~
- 在web服务器安装了防火墙,随后又卸载了防火墙,从其他机器再也不能访问Web服务器网页了,在线等
- !!!哪位大虾提供一个中文版MSDN for Visual studio .net 2003???要求下载速度快,酬谢一百分。
{
/// <summary>
/// AMT_GB2312 的摘要说明。
/// </summary>
public class AMT_GB2312
{
public AMT_GB2312()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public string ConvertToGB2312(double amount)
{
string m_str,m_int,m_dec;
int m_pos,m_len; m_str = System.Convert.ToString(amount);
m_len = m_str.Length;
m_pos = m_str.IndexOf('.',0);
m_dec = "00";
if (m_pos ==-1)
m_int = m_str;
else
{
m_int = m_str.Substring(0,m_pos);
m_dec = m_str.Substring(m_pos+1 ,m_len -m_pos-1);
m_dec = m_dec.PadRight(2,'0');
m_dec = m_dec.Substring(0,2);
} m_int = m_int.PadLeft(12,'0'); m_str = "";
if (m_int.Substring(0,4) != "0000")
{
m_str += ConvertTo9999(m_int.Substring(0,4)) + "亿";
} if (m_int.Substring(4,4) != "0000")
{
m_str += ConvertTo9999(m_int.Substring(4,4)) + "万";
}
if (m_int.Substring(8,4) != "0000")
{
m_str += ConvertTo9999(m_int.Substring(8,4)) + "圆";
} if (m_dec !="00")
{
m_str += ConvertDec(m_dec);
}
else
{
m_str += "整";
} return m_str; }
private string ConvertTo9999(string m_part)
{
string m_str;
int m_val,m_tmp;
m_str = "";
m_val = (int)System.Convert.ToInt32(m_part,10);
m_tmp = (int)m_val/1000;
switch(m_tmp)
{
case 1:
m_str = "壹仟";
break;
case 2:
m_str = "贰仟";
break;
case 3:
m_str = "叁仟";
break;
case 4:
m_str = "肆仟";
break;
case 5:
m_str = "伍仟";
break;
case 6:
m_str = "陆仟";
break;
case 7:
m_str = "柒仟";
break;
case 8:
m_str = "捌仟";
break;
case 9:
m_str = "玖仟";
break;
default:
break;
} m_val = m_val -(m_tmp*1000);
m_tmp = (int)m_val/100; switch(m_tmp)
{
case 1:
m_str += "壹佰";
break;
case 2:
m_str += "贰佰";
break;
case 3:
m_str += "叁佰";
break;
case 4:
m_str += "肆佰";
break;
case 5:
m_str += "伍佰";
break;
case 6:
m_str += "陆佰";
break;
case 7:
m_str += "柒佰";
break;
case 8:
m_str += "捌佰";
break;
case 9:
m_str += "玖佰";
break;
default:
break;
}
m_val = m_val -(m_tmp*100);
m_tmp = (int)m_val/10; switch(m_tmp)
{
case 1:
m_str += "壹拾";
break;
case 2:
m_str += "贰拾";
break;
case 3:
m_str += "叁拾";
break;
case 4:
m_str += "肆拾";
break;
case 5:
m_str += "伍拾";
break;
case 6:
m_str += "陆拾";
break;
case 7:
m_str += "柒拾";
break;
case 8:
m_str += "捌拾";
break;
case 9:
m_str += "玖拾";
break;
default:
break;
} m_val = m_val -(m_tmp*10);
m_tmp = (int)m_val%10; switch(m_tmp)
{
case 1:
m_str += "壹";
break;
case 2:
m_str += "贰";
break;
case 3:
m_str += "叁";
break;
case 4:
m_str += "肆";
break;
case 5:
m_str += "伍";
break;
case 6:
m_str += "陆";
break;
case 7:
m_str += "柒";
break;
case 8:
m_str += "捌";
break;
case 9:
m_str += "玖";
break;
default:
break;
} return m_str; }
private string ConvertDec(string m_part)
{
string m_str;
int m_val; m_str = "";
m_val = (int)System.Convert.ToInt32(m_part,10)/10;
switch(m_val)
{
case 1:
m_str = "壹角";
break; case 2:
m_str = "贰角";
break;
case 3:
m_str = "叁角";
break;
case 4:
m_str = "肆角";
break;
case 5:
m_str = "伍角";
break;
case 6:
m_str = "陆角";
break;
case 7:
m_str = "柒角";
break; case 8:
m_str = "捌角";
break;
case 9:
m_str = "玖角";
break;
default:
break; } m_val = (int)System.Convert.ToInt32(m_part,10)%10; switch(m_val)
{
case 1:
m_str += "壹分";
break; case 2:
m_str += "贰分";
break;
case 3:
m_str += "叁分";
break;
case 4:
m_str += "肆分";
break;
case 5:
m_str += "伍分";
break;
case 6:
m_str += "陆分";
break;
case 7:
m_str += "柒分";
break; case 8:
m_str += "捌分";
break;
case 9:
m_str += "玖分";
break;
default:
break; }
return m_str;
}
}
}
private static string[] cstr={"零","壹","贰","叁","肆", "伍", "陆","柒","捌","玖"};
private static string[] wstr={"","","拾","佰","仟","萬","拾","佰","仟","億","拾","佰","仟"};
//数字必须在12位整数以内的字符串
//调用方式如:Label1.Text=ConvertInt("数字字符串");public string ConvertInt(string str)
{
int len=str.Length;
int i;
string tmpstr,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("零零","零");
rstr+="圆整";
return rstr;
}
{
string DX=m.ToString();
int XSD=DX.IndexOf(".",0);
string XP;
if(XSD==-1)
{
XP=RY(DX);
return XP;
}
else
{
string RX="";
string DX1=DX.Substring(0,XSD);
XP=RY(DX1);
string DX2=DX.Substring(XSD,DX.Length-XSD).Substring(1);
if(DX2.Length==1)
if (DX2[0]!='0')
RX=HZ(DX2[0])+"角零分";
if(DX2.Length==2)
{
if(DX2[1]!='0'&& DX2[0]!='0')
RX=HZ(DX2[0])+"角"+HZ(DX2[1])+"分";
else
if(DX2[0]=='0')
RX=HZ(DX2[1])+"分";
}
XP=XP+RX;
return XP;
}
}
public string RY(string DX)
{
string R="";
int l=DX.Length;
if(DX=="0") return R;
int b=0;
for(int i=0;i<DX.Length;i++)
{
int m=DX.Length-i;
R=R+HZ(DX[i]);
if(b==0 && DX[i]=='0'&& m!=5 && m!=1 && i<DX.Length-1)
{
bool p=true;
for(int k=i+1;k<DX.Length;k++)
{
if(DX[k]=='0') p=false;
}
if(p==true)
{
R=R+"零";
b=1;
}
}
if(m==8 && DX[i]!='0') R=R+"仟";
if(m==7 && DX[i]!='0') R=R+"佰";
if(m==6 && DX[i]!='0') R=R+"拾";
if(m==5 ) R=R+"万";
if(m==4 && DX[i]!='0') R=R+"仟";
if(m==3 && DX[i]!='0') R=R+"佰";
if(m==2 && DX[i]!='0') R=R+"拾";
if(m==1) R=R+"元";
}
return R;
} public string HZ(char num)
{
switch(num)
{
case '1': return "壹";
case '2': return "贰";
case '3': return "叁";
case '4': return "肆";
case '5': return "伍";
case '6': return "陆";
case '7': return "柒";
case '8': return "捌";
case '9': return "玖";
default : return "零";
}
}