zoukankan      html  css  js  c++  java
  • Delphi Format 格式化数字

    function Format(const Format: string; const Args: array of const): string;

      Format字符串说明:
      "%" [index ":"] ["-"] [width] ["." prec] type
      (1) 格式化字符串必须以%开头
      (2) [index ":"] 索引指的是Args参数列表中要显示的每一项的序号。比如:Args是
                      ['a', 'c'],那么'a'的索引就是0,而'c'的索引就是1,而且由于只有
                      两项,所以就不会出现大于1的索引值。
                      Format('%2:s %1:s %0:s', ['1st', '2nd', '3rd']);
                      结果:'3rd 2nd 1st'
      (3) ["-"] 这个标识符的作用是当要显示的字符的个数少于[width]时,在右边填补空格;
                如果没加上["-"],则在左边填补空格。
                Format('(%4s)', ['aa']); 结果:'  aa'
      (4) [width] 宽度
                  规定了要显示的字符的个数。如果要显示的宽度大于[width],则按实际的
                  宽度来显示;反之,则填补空格或按要求填补其它字符。
      (5) ["." prec] 精度
                     这是针对浮点数来说的,一般就是指小数点后的位数。
      (6) type 类型(见下面)

      type的可能值有下列这些:
      (1) d 有符号十进制数
            Args必须是有符号整型数。如果在格式化字符串中还加入了["." prec],则如果Args
            的长度如果小于给出的精度数时,在前边填补0;如果大于精度数,按实际长度显示。
            Format('(%.3d)', [99]); 结果:'(099)'

      (2) u 无符号十进制数
            Args必须是无符号整型数。其它特性与d一样。

      (3) e 科学技术法
            用科学技术法显示数据,形式大致如下:'-d.ddd...E+ddd'。
            Args必须是一个浮点数。如果是一个负数,则在最前面显示一个符号;在小数点前面
            总是显示一位数字;包括小数点前面的数字在内,数字的个数由["." prec]来确定,
            如果没有指定["." prec],则默认为15位精度。如果实际的数字长度超出了指定的
            ["." prec],则刚刚超出的那一位数字四舍五入。指数符号E后面总是要跟着加号或
            减号,并且在后面至少跟着三位数字。

      (4) f 固定的
            Args必须为浮点数,转换后的形式大致是'-ddd.ddd...'这样的。
            如果要转换的是负值,则前面有一个负号。转换后的数字,在小数点后面的数字的个数
            由["." prec]决定。如果没有指定["." prec],默认为2位精度。

      (5) g 一般的
            Args必须为浮点数。
            被转换后的数字总是尽可能的简短(有可能是f或e形式的)。有重要意义的数字的长度
            由["." prec]来决定,默认为15位(包括整数位和小数位)。数字前后的0都将被去掉,
            小数点也只有在必要的时候才显示出来。如果小数点左边的数字小于等于指定的精度,
            并且整个值大于或等于0.00001的时候,才使用f的显示格式,否则使用e(科学技术法)

      (6) n Args必须是浮点数。形式和f是一样的,不同的是会显示千位符,如:1,123,444

      (7) m 货币类型
            Args必须是浮点数。能够显示货币符号,可以通过“控制面板”来设置。小数点后
            的位数由["." prec]决定,如果没用["." prec],则默认2位。

      (8) p 指针
            Args必须是一个指针值。
            将指针转换为8个字符的十六进制字符串。

      (9) s 字符串
            Args必须是字符,字符串或PChar值。
            如果指定了["." prec],并且字符串的实际长度大于["." prec],则从左到右截取
            精度指定数量的字符串,其余的删除。

      (10) x 十六进制
             Args必须是一个整型数。
             如果使用了["." prec],不足部分要用0补齐。

      注意:[index ":"] [width] ["." prec]可以使用这样的格式:
            Format('%*.*f', [8, 2, 123.456])
            等价于:Format('%8.2f', [123.456]).

    Format('x=%d', [12]); //'x=12' //最普通
    Format('x=%3d', [12]); //'x= 12' //指定宽度
    Format('x=%f', [12.0]); //'x=12.00' //浮点数
    Format('x=%.3f', [12.0]); //'x=12.000' //指定小数
    Format('x=%.*f', [5, 12.0]); //'x=12.00000' //动态配置
    Format('x=%.5d', [12]); //'x=00012' //前面补充0
    Format('x=%.5x', [12]); //'x=0000C' //十六进制
    Format('x=%1:d%0:d', [12, 13]); //'x=1312' //使用索引
    Format('x=%p', [nil]); //'x=00000000' //指针
    Format('x=%1.1e', [12.0]); //'x=1.2E+001' //科学记数法
    Format('x=%%', []); //'x=%' //得到"%"
    S := Format('%s%d', [S, I]); //S := S + StrToInt(I); //连接字符串

  • 相关阅读:
    eclipse中文乱码问题解决方案
    修改Tomcat的JDK目录
    Tomcat 5.5 修改服务器的侦听端口
    HTML DOM教程 27HTML DOM Button 对象
    HTML DOM教程 24HTML DOM Frameset 对象
    Navicat for MySQL v8.0.27 的注册码
    HTML DOM教程 25HTML DOM IFrame 对象
    Tomcat 5.5 的下载和安装
    android manifest相关属性
    ubuntu10.04 下 eclipse 小结
  • 原文地址:https://www.cnblogs.com/MaxWoods/p/1841685.html
Copyright © 2011-2022 走看看