已经转换成大写的金额,但是怎么样把“万仟佰拾圆”分隔开来,分别得到5个变量?如果没有“仟”的话,就得到一个“零”,如果要判断的话 好像再vb。net中有个专用的转换函数啊!你试一试split() 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 转贴一个代码,可能没有你的这个问题double wlNum =double.Parse(this.mainDs.Tables[0].Rows[0][nTail.SelectSingleNode("Item").InnerText].ToString()); string wlAmt,wkCd ; wkCd=""; wlAmt=wlNum.ToString("f").PadLeft(12); for(int l=0;l<=11;l++) { if (l!=9) { wkCd +=yGetChg(wlAmt.Substring(l,1),l,wlAmt); } } wkcd就是结果 我当然知道用split函数,关键是怎么样判断条件实在太多了,因为你要考虑“万”,“仟”,“佰”,“拾”有或者没有的情况,代码太长了,我想问问有没有简单的方法 string yGetChg(string wlCd , int wlLoc , string wlAmtt ) { string wlDd="億仟佰拾萬仟佰拾元 角分"; string wlName=""; string wlTemp=wlAmtt.Substring(1,1)+wlAmtt.Substring(2,1)+wlAmtt.Substring(3,1)+ wlAmtt.Substring(4,1)+"0"; int wlTemp2=int.Parse( wlTemp); switch (wlCd) { case "1": wlName="壹" + wlDd.Substring(wlLoc,1); break; case "2": wlName= "貳" + wlDd.Substring(wlLoc, 1); break; case "3": wlName="參" +wlDd.Substring(wlLoc,1); break; case "4": wlName="肆" + wlDd.Substring(wlLoc, 1); break; case "5": wlName="伍" + wlDd.Substring(wlLoc, 1); break; case "6": wlName="陸" + wlDd.Substring(wlLoc, 1); break; case "7": wlName="柒" + wlDd.Substring(wlLoc, 1); break; case "8": wlName="捌" + wlDd.Substring(wlLoc, 1); break; case "9": wlName="玖" + wlDd.Substring(wlLoc, 1); break; case "0": if(wlLoc<11) { if(("1234567").IndexOf(wlLoc.ToString())>0 & ("0").IndexOf(wlAmtt.Substring(wlLoc+1,1))<0) { wlName="零"; } if(wlAmtt.Substring(wlLoc+1,1)==".") { wlName=wlDd.Substring(wlLoc,1); } if(wlLoc==4 & wlTemp2>0 ) { wlName= "萬"; } } break; } return wlName.Trim(); } 为什么对话框打开两次?在线等 谢谢 控制台程序,每天时间到8点就自动执行一段程序 基础知识忘完了,弱弱的疑问,关于接口,大家别见笑~ 求一个加密的过程 求C的一个算法的意思,如果用C#怎样写呢 个普通的SQL语句读出来的数据出现了重复这是怎么回事?高手们看看 学了一周C#,编译了一个程序,但是不能运行,怎么回事呀? 刚学c#,有个弱智得小问题 求助 C# 如何实现移到checkedlistbox1里的某一项上,让groupBox1有对checkedlistbox里某一项描述? FileDialog.Filter的问题 在程序中能够引用注释的内容吗?
string wlAmt,wkCd ;
wkCd="";
wlAmt=wlNum.ToString("f").PadLeft(12);
for(int l=0;l<=11;l++)
{
if (l!=9)
{
wkCd +=yGetChg(wlAmt.Substring(l,1),l,wlAmt);
}
}
wkcd就是结果
{
string wlDd="億仟佰拾萬仟佰拾元 角分";
string wlName="";
string wlTemp=wlAmtt.Substring(1,1)+wlAmtt.Substring(2,1)+wlAmtt.Substring(3,1)+ wlAmtt.Substring(4,1)+"0";
int wlTemp2=int.Parse( wlTemp);
switch (wlCd)
{
case "1":
wlName="壹" + wlDd.Substring(wlLoc,1);
break;
case "2":
wlName= "貳" + wlDd.Substring(wlLoc, 1);
break;
case "3":
wlName="參" +wlDd.Substring(wlLoc,1);
break;
case "4":
wlName="肆" + wlDd.Substring(wlLoc, 1);
break;
case "5":
wlName="伍" + wlDd.Substring(wlLoc, 1);
break;
case "6":
wlName="陸" + wlDd.Substring(wlLoc, 1);
break;
case "7":
wlName="柒" + wlDd.Substring(wlLoc, 1);
break;
case "8":
wlName="捌" + wlDd.Substring(wlLoc, 1);
break;
case "9":
wlName="玖" + wlDd.Substring(wlLoc, 1);
break;
case "0":
if(wlLoc<11)
{
if(("1234567").IndexOf(wlLoc.ToString())>0 & ("0").IndexOf(wlAmtt.Substring(wlLoc+1,1))<0)
{
wlName="零";
}
if(wlAmtt.Substring(wlLoc+1,1)==".")
{
wlName=wlDd.Substring(wlLoc,1);
}
if(wlLoc==4 & wlTemp2>0 )
{
wlName= "萬";
}
}
break;
}
return wlName.Trim();
}