Hi
怎样用C#代码实现金额的格式化,比如将789456123转换为789,456,123.0000?
谢谢!

解决方案 »

  1.   

    用insert每隔三位就插入一个,
      

  2.   

    decimal dec=789456123;MessageBox.Show(dec.ToString("###,###,###.###0"));
      

  3.   

    to sskset(断点):
    好像不行啊,抱错ToString里的参数应该实现IFormatProvider
      

  4.   

    function Returnthoud(strValue)
    {
    var strJoin="";
    var len=strValue.length;
    var intcount=0;
    if(strValue.indexOf(".")>0)
    {
    var Arr_Numric=strValue.split(".");
    for(var i=Arr_Numric[0].length;i>=0;--i)
    {
    intcount++;
    if(intcount%3==0&&i>1)
    {
    strJoin=","+strValue.substring(i-1,i)+strJoin;
    }
    else
    strJoin=strValue.substring(i-1,i)+strJoin;
    }
    strJoin=strJoin+"."+Arr_Numric[1];
    }
    else
    {
    for(var i=len;i>=0;--i)
    {
    intcount++;
    if(intcount%3==0&&i>1)
    {
    strJoin=","+strValue.substring(i-1,i)+strJoin;
    }
    else
    strJoin=strValue.substring(i-1,i)+strJoin;
    }
    strJoin=strJoin+".00";
    }
    return strJoin;
    }
      

  5.   

    MessageBox.Show(dec.ToString("###,###,###.0000"));