程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> .Net中通用的FormatString格式符整理

.Net中通用的FormatString格式符整理

編輯:C#入門知識

格式化日期和數字的字符串經常要用到這個, 就把幫助裡面的東西大概整理了一些列在這裡了.
下表描述了用來格式化 DateTime 對象的標准格式說明符。

格式說明符
名稱
說明

d
短日期模式
顯示由與當前線程關聯的 DateTimeFormatInfo.ShortDatePattern 屬性定義的模式或者由指定格式提供程序定義的模式。

D
長日期模式
顯示由與當前線程關聯的 DateTimeFormatInfo.LongDatePattern 屬性定義的模式或者由指定格式提供程序定義的模式。

t
短時間模式
顯示由與當前線程關聯的 DateTimeFormatInfo.ShortTimePattern 屬性定義的模式或者由指定格式提供程序定義的模式。

T
長時間模式
顯示由與當前線程關聯的 DateTimeFormatInfo.LongTimePattern 屬性定義的模式或者由指定格式提供程序定義的模式。

f
完整日期/時間模式(短時間)
顯示長日期和短時間模式的組合,由空格分隔。

F
完整日期/時間模式(長時間)
顯示由與當前線程關聯的 DateTimeFormatInfo.FullDateTimePattern 屬性定義的模式或者由指定格式提供程序定義的模式。

g
常規日期/時間模式(短時間)
顯示短日期和短時間模式的組合,由空格分隔。

G
常規日期/時間模式(長時間)
顯示短日期和長時間模式的組合,由空格分隔。

M 或 m
月日模式
顯示由與當前線程關聯的 DateTimeFormatInfo.MonthDayPattern 屬性定義的模式或者由指定格式提供程序定義的模式。

R 或 r
RFC1123 模式
顯示由與當前線程關聯的 DateTimeFormatInfo.RFC1123Pattern 屬性定義的模式或者由指定格式提供程序定義的模式。這是定義的標准,並且屬性是只讀的;因此,無論所使用的區域性或所提供的格式提供程序是什麼,它總是相同的。屬性引用 CultureInfo.InvariantCulture 屬性並遵照自定義模式“ddd, dd MMM yyyy HH:mm:ss GMT”。請注意,“GMT”中的“M”需要轉義符,因此它不被解釋。格式化並不修改 DateTime 的值,所以您必須在格式化之前將值調整為 GMT。

s
可排序的日期/時間模式;符合 ISO 8601
顯示由與當前線程關聯的 DateTimeFormatInfo.SortableDateTimePattern 屬性定義的模式或者由指定格式提供程序定義的模式。屬性引用 CultureInfo.InvariantCulture 屬性,格式遵照自定義模式“yyyy-MM-ddTHH:mm:ss”。

u
通用的可排序日期/時間模式
顯示由與當前線程關聯的 DateTimeFormatInfo.UniversalSortableDateTimePattern 屬性定義的模式或者由指定格式提供程序定義的模式。因為它是定義的標准,並且屬性是只讀的,因此無論區域性或格式提供程序是什麼,模式總是相同的。格式化遵照自定義模式“yyyy-MM-dd HH:mm:ssZ”。格式化日期和時間時不進行時區轉換;所以,請在使用格式說明符之前將本地日期和時間轉換為通用時間。

U
通用的可排序日期/時間模式
顯示由與當前線程關聯的 DateTimeFormatInfo.FullDateTimePattern 屬性定義的模式或者由指定格式提供程序定義的模式。請注意,顯示的時間是通用時間,而不是本地時間。

Y 或 y
年月模式
顯示由與當前線程關聯的 DateTimeFormatInfo.YearMonthPattern 屬性定義的模式或者由指定格式提供程序定義的模式。

任何其他單個字符
未知說明符

下表描述了標准數字格式字符串。請注意,這些格式說明符產生的輸出字符串受“區域選項”控制面板中的設置的影響。使用不同設置的計算機會生成不同的輸出字符串。

格式說明符
名稱
說明

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
常規
根據數字類型以及是否存在精度說明符,數字會轉換為固定點或科學記數法的最緊湊形式。如果精度說明符被省略或為零,則數字的類型決定默認精度,如下表所示。

  • ByteSByte:3
  • Int16UInt16:5
  • Int32UInt32:10
  • Int64UInt64: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”。精度說明符指示結果字符串中所需的最少數字個數。如果需要的話,則用零填充該數字的左側,以產生精度說明符給定的數字個數。只有整型才支持此格式。

如果標准數字格式說明符未提供所需的格式化類型,可以使用自定義格式字符串進一步增強字符串輸出。標准格式字符串包含一個字母字符,後面可能會跟有數字序列(形成一個 0 到 99 的值);而所有其他格式字符串都是自定義格式字符串。
下表顯示可以用於創建自定義數字格式字符串及其定義的字符。請注意,與當前線程關聯的 NumberFormatInfo 對象的“區域選項”控制面板的設置會影響這些字符中的某些所產生的輸出字符串。使用不同區域性的計算機將生成不同的輸出字符串。
格式字符值說明
0零占位符如果格式化的值在格式字符串中出現“0”的位置有一個數字,則此數字被復制到輸出字符串中。小數點前最左邊的“0”的位置和小數點後最右邊的“0”的位置確定總在輸出字符串中出現的數字范圍。“00”說明符使得值被捨入到小數點前最近的數字,其中零位總被捨去。例如,用“00”格式化 34.5 將得到值 35。
#數字占位符如果格式化的值在格式字符串中出現“#”的位置有一個數字,則此數字被復制到輸出字符串中。否則,輸出字符串中

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved