string s="";
s=s.Replace("1","1").Replace("2","2")....
Replace("中文状态下的数字","英文状态下的数字")

解决方案 »

  1.   

    自己写个类,或者写个方法实现。
    建议用一个string的数组存放英文单词
    string[] words=new string[10];
    words[0]="zero";
    words[1]="one";
    words[2]="two";
    这样使用起来很方便。
      

  2.   

    英文读法是按三位一节的,每一节都有一个大单位,例如million,thousand,等,每一节里面又分
    hundred,十位(20,30,40......90),0-19,
    你先三位三位分割,然后每三位转换,零就不用出来,比中国式的读法好转,因为不用补零。
      

  3.   

    楼主,什么是英文格式的数字?是指99,999格式的吗?
    而阿拉伯数字是指99999格式的吗?如果是我理解的样子的话,那下面的代码或许可以帮助你。               DataTable dt = new DataTable();
                dt.Columns.Add("Number", Type.GetType("System.Int32"));            DataRow dRow = dt.NewRow();            dRow[0] = "1234152354";
                dt.Rows.Add(dRow);            String result = String.Format("{0:N0}", dRow[0]);
                String result01 = String.Format("{0:N3}", dRow[0]);
                Console.WriteLine("result=" + result + " result01=" + result01);
    结果:
    result=1,234,152,354 result01=1,234,152,354.000