zoukankan      html  css  js  c++  java
  • DevExpress DisplayFormat格式化操作

     1     public class MyExamFormat : IFormatProvider, ICustomFormatter
     2         {
     3             public string NumberToChinese(int num)
     4             {
     5                 string numStr = "0123456789";
     6                 string chineseStr = "零一二三四五六七八九";
     7                 if (num >= 0 && num <= 9) { return chineseStr[numStr.IndexOf(num.ToString()[0])].ToString(); }
     8                 else if (num >= 10 && num <= 19) { if (num == 10) { return ""; } return "" + chineseStr[numStr.IndexOf(num.ToString()[1])].ToString(); }
     9                 else if (num >= 20 && num <= 99)
    10                 {
    11                     if (num % 10 == 0) { return chineseStr[numStr.IndexOf(num.ToString()[0])].ToString() + ""; }
    12                     else return chineseStr[numStr.IndexOf(num.ToString()[0])].ToString() + "" + chineseStr[numStr.IndexOf(num.ToString()[1])].ToString();
    13                 }
    14                 else if (num >= 100 && num <= 999)
    15                 {
    16                     if (num % 100 == 0) { return chineseStr[numStr.IndexOf(num.ToString()[0])].ToString() + ""; }
    17                     else return chineseStr[numStr.IndexOf(num.ToString()[0])].ToString() + "" +
    18                       ((int.Parse(num.ToString().Substring(1).ToString()).ToString().Length != (num.ToString().Length - 1)) ?
    19                          "" + NumberToChinese(int.Parse(num.ToString().Substring(1)))
    20                         : NumberToChinese(int.Parse(num.ToString().Substring(1))));
    21                 }
    22                 else if (num >= 1000 && num <= 9999)
    23                 {
    24                     if (num % 1000 == 0) { return chineseStr[numStr.IndexOf(num.ToString()[0])].ToString() + ""; }
    25                     else return
    26                          chineseStr[numStr.IndexOf(num.ToString()[0])].ToString() + "" +
    27                       ((int.Parse(num.ToString().Substring(1).ToString()).ToString().Length != (num.ToString().Length - 1)) ?
    28                          "" + NumberToChinese(int.Parse(num.ToString().Substring(1)))
    29                         : NumberToChinese(int.Parse(num.ToString().Substring(1))));
    30                 }
    31                 return num.ToString();
    32             }
    33 
    34             public object GetFormat(Type formatType)
    35             {
    36                 if (formatType == typeof(ICustomFormatter))
    37                 {
    38                     return this;
    39                 }
    40                 else return null;
    41             }
    42 
    43             public string Format(string format, object arg, IFormatProvider formatProvider)
    44             {
    45                 return "" + NumberToChinese(int.Parse(arg + "")) + "";
    46             }
    47         }
  • 相关阅读:
    汤姆大叔JavaCript系列10阅读笔记1
    界面设计
    html5 canvas store 和 restore 详解
    js 的上下文
    PHP实现大数以,做分隔符分隔
    Javascript可以兼容各浏览器的阻止默认行为发生的方法
    Javascript实现页面内元素添加滚动条
    $.getjson遇到的几个问题json返回数据中带有html标签的输出
    MYSQL的随机查询的实现方法
    jQuery插件:jqplot图表绘制插件详解
  • 原文地址:https://www.cnblogs.com/flay/p/13272177.html
Copyright © 2011-2022 走看看