• Format


    http://www.delphibasics.co.uk/RTL.asp?Name=Format

    Description
    The Format function provides 'C' like formatting of multiple of simple data types into a string. It provides very precise control over this formatting. 
     
    The Formatting parameter defines how the Data array is manipulated into the returned string. 
     
    The Formatting string can comprise a mix of ordinary characters (that are passed unchanged to the result string), and data formatting characters. This formatting is best explained by the example code. 
     
    In simple terms, each data formatting substring starts with a % and ends with a data type indicator : 
     
    = Decimal (integer)
    = Scientific
    = Fixed
    = General
    = Money
    = Number (floating)
    = Pointer
    = String
    = Unsigned decimal
    = Hexadecimal

     
    The general format of each formatting substring is as follows: 
     
    %[Index:][-][Width][.Precision]Type 
     
    where the square brackets refer to optional parameters, and the : . - characters are literals, the first 2 of which are used to identify two of the optional arguments. 
     
    Version 2 of this function is for use within threads. You furnish the FormatSettings record before invoking the call. It takes a local copy of global formatting variables that make the routine thread safe.
     
    Notes
    Various formatting options, such as DecimalSeparatorand CurrencyString are used for some of these formatting options. See the more specific versions of data display commands, such as CurrToStrF for details.

    Conference call services can be available to discuss these formatting options.
     
    Related commands
    CurrencyDecimals   Defines decimal digit count in the Format function
    CurrencyFormat   Defines currency string placement in curr display functions
    CurrencyString   The currency string used in currency display functions
    CurrToStrF   Convert a currency value to a string with formatting
    DecimalSeparator   The character used to display the decimal point
    FloatToStrF   Convert a floating point value to a string with formatting
    FormatCurr   Rich formatting of a currency value into a string
    FormatDateTime   Rich formatting of a TDateTime variable into a string
    FormatFloat   Rich formatting of a floating point number into a string
    NegCurrFormat   Defines negative amount formatting in currency displays
    ThousandSeparator   The character used to display the thousands separator
     Download this web site as a Windows program.
     
    Example code : Showing all of the formatting data types
    var
      text : string;
    begin
      // Just 1 data item
      ShowMessage(Format('%s', ['Hello']));

      // A mix of literal text and a data item
      ShowMessage(Format('String = %s', ['Hello']));
      ShowMessage('');

      // Examples of each of the data types
      ShowMessage(Format('Decimal          = %d', [-123]));
      ShowMessage(Format('Exponent         = %e', [12345.678]));
      ShowMessage(Format('Fixed            = %f', [12345.678]));
      ShowMessage(Format('General          = %g', [12345.678]));
      ShowMessage(Format('Number           = %n', [12345.678]));
      ShowMessage(Format('Money            = %m', [12345.678]));
      ShowMessage(Format('Pointer          = %p', [addr(text)]));
      ShowMessage(Format('String           = %s', ['Hello']));
      ShowMessage(Format('Unsigned decimal = %u', [123]));
      ShowMessage(Format('Hexadecimal      = %x', [140]));
    end;
    Show full unit code
       Hello
       String = Hello
       
       Decimal          = -123
       Exponent         = 1.23456780000000E+004
       Fixed            = 12345.68
       General          = 12345.678
       Number           = 12,345,68
       Money            = ?12,345.68
       Pointer          = 0069FC90
       String           = Hello
       Unsigned decimal = 123
       Hexadecimal      = 8C
     
     
    Example code : Using the index, width and precision values
    begin
      // The width value dictates the output size
      // with blank padding to the left
      // Note the <> characters are added to show formatting
      ShowMessage(Format('Padded decimal    = <%7d>', [1234]));

      // With the '-' operator, the data is left justified
      ShowMessage(Format('Justified decimal = <%-7d>', [1234]));

      // The precision value forces 0 padding to the desired size
      ShowMessage(Format('0 padded decimal  = <%.6d>', [1234]));

      // A combination of width and precision
      // Note that width value precedes the precision value
      ShowMessage(Format('Width + precision = <%8.6d>', [1234]));

      // The index value allows the next value in the data array
      // to be changed
      ShowMessage(Format('Reposition after 3 strings = %s %s %s %1:s %s',
                         ['Zero', 'One', 'Two', 'Three']));

      // One or more of the values may be provided by the
      // data array itself. Note that testing has shown that an *
      // for the width parameter can yield EConvertError.
      ShowMessage(Format('In line           = <%10.4d>', [1234]));
      ShowMessage(Format('Part data driven  = <%*.4d>', [10, 1234]));
      ShowMessage(Format('Data driven       = <%*.*d>', [10, 4, 1234]));
    end;
    Show full unit code
       Padded decimal    = <   1234>
       Justified decimal = <1234   >
       0 padded decimal  = <001234>
       Width + precision = <  001234>
       Reposition after 3 strings = Zero One Two One Two
       In line           = <      1234>
       Part data driven  = <      1234>
       Data driven       = <      1234>
  • 相关阅读:
    TcxComboBoxProperties下拉框填充
    Delphi用QJSON解析JSON格式的数据 【转】
    Delphi的idhttp报IOHandler value is not valid错误的原因[转]
    RelayCommand
    ViewModelBase && ObservableObject
    MvvmLight ToolKit 教程
    WPF中的数据验证
    MvvmLight ToolKit .Net4.5版本 CanExecute不能刷新界面bug
    微软虚拟学院MVA 字幕获取方法
    WPF Binding INotifyPropertyChanged 多线程 深入理解
  • 原文地址:https://www.cnblogs.com/findumars/p/3496102.html
Copyright © 2020-2023  润新知