學習劄記一:格式項的文法{index[,alignment][:formatString]}

來源:互聯網
上載者:User

格式項的文法是 {index[,alignment][:formatString]},它指定了一個強制索引、格式化文本的可選長度和對齊,以及格式說明符字元的可選字串,其中格式說明符字元用於控制如何設定相應對象的值的格式。

alignment:指示參數的佔位狀況。如:{0, 8}表示參數居右,如果參數佔位小於8,則在參數前多出(8-參數佔位數)的空格;{0,-8}表示參數居左,如果參數佔位小於8,則在參數後多出(8-參數佔位數)的空格。

formatString:
C 或 c
 貨幣
 數字轉換為表示貨幣金額的字串。轉換由用于格式化數位 NumberFormatInfo 對象的貨幣格式資訊控制。有效位數規範指示所需的小數位元。如果省略有效位數規範,則使用 NumberFormatInfo 給定的預設貨幣精度。
 
D 或 d
 十進位數
 只有整型才支援此格式。數字轉換為十進位數字 (0-9) 的字串,如果數字為負,則前面加負號。有效位數規範指示結果字串中所需的最少數字個數。如果需要的話,則用零填充該數位左側,以產生有效位數規範給定的數字個數。
 
E 或 e
 科學計數法(指數)
 數字轉換為“-d.ddd…E+ddd”或“-d.ddd…e+ddd”形式的字串,其中每個“d”表示一個數字 (0-9)。如果該數字為負,則該字串以減號開頭。小數點前總有一個數字。有效位數規範指示小數點後所需的位元。如果省略有效位數規範,則使用預設值,即小數點後六位元字。格式說明符的大小寫指示在指數前加首碼“E”還是“e”。指數總是由正號或負號以及最少三位元字組成。如果需要,用零填充指數以滿足最少三位元字的要求。
 
F 或 f
 固定點
 數字轉換為“-ddd.ddd…”形式的字串,其中每個“d”表示一個數字 (0-9)。如果該數字為負,則該字串以減號開頭。有效位數規範指示所需的小數位元。如果忽略有效位數規範,則使用 NumberFormatInfo 給定的預設數值精度。
 
G 或 g
 常規
 根據數字類型以及是否存在有效位數規範,數字會轉換為固定點或科學記號標記法的最緊湊形式。如果有效位數規範被省略或為零,則數位類型決定預設精度,如下表所示。

Byte 或 SByte:3

Int16 或 UInt16:5

Int32 或 UInt32:10

Int64 或 UInt64:19

Single:7

Double:15

Decimal:29

如果用科學記號標記法表示數字時指數大於 -5 而且小於有效位數規範,則使用固定點標記法;否則使用科學記號標記法。如果要求有小數點,並且忽略尾部零,則結果包含小數點。如果有效位數規範存在,並且結果的有效數字位元超過指定精度,則通過舍入刪除多餘的尾部數字。使用科學記號標記法時,如果格式說明符是“G”,結果的指數帶首碼“E”;如果格式說明符是“g”,結果的指數帶首碼“e”。

上述規則有一個例外:如果數字是 Decimal 而且省略有效位數規範時。在這種情況下總使用固定點標記法並保留尾部零。
 
N 或 n
 數字
 數字轉換為“-d,ddd,ddd.ddd…”形式的字串,其中每個“d”表示一個數字 (0-9)。如果該數字為負,則該字串以減號開頭。小數點左邊每三個數字之間插入一個千位分隔字元。有效位數規範指示所需的小數位元。如果忽略有效位數規範,則使用 NumberFormatInfo 給定的預設數值精度。
 
P 或 p
 百分比
 數字轉換為由 NumberFormatInfo.PercentNegativePattern 屬性或 NumberFormatInfo.PercentPositivePattern 屬性定義的、表示百分比的字串。如果數字為負,則產生的字串由 PercentNegativePattern 定義並以負號開頭。已轉換的數字乘以 100 以表示為百分比。有效位數規範指示所需的小數位元。如果省略有效位數規範,則使用 NumberFormatInfo 給定的預設數值精度。
 
R 或 r
 往返過程
 往返過程說明符保證轉換為字串的數值再次被分析為相同的數值。使用此說明符格式化數值時,首先使用常規格式對其進行測試:Double 使用 15 位精度,Single 使用 7 位精度。如果此值被成功地分析回相同的數值,則使用常規格式說明符對其進行格式化。但是,如果此值未被成功地分析為相同數值,則它這樣格式化:Double 使用 17 位精度,Single 使用 9 位精度。雖然有效位數規範可以追加到往返過程格式說明符,但它將被忽略。使用此說明符時,往返過程優先於精度。此格式僅受浮點型支援。
 
X 或 x
 十六進位數
 數字轉換為十六進位數位字串。格式說明符的大小寫指示對大於 9 的十六進位數字使用大寫字元還是小寫字元。例如,使用“X”產生“ABCDEF”,使用“x”產生“abcdef”。有效位數規範指示結果字串中所需的最少數字個數。如果需要的話,則用零填充該數位左側,以產生有效位數規範給定的數字個數。只有整型才支援此格式。
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.