VB FORMAT 函數(shù) 格式化字串的說明_第1頁
VB FORMAT 函數(shù) 格式化字串的說明_第2頁
VB FORMAT 函數(shù) 格式化字串的說明_第3頁
VB FORMAT 函數(shù) 格式化字串的說明_第4頁
VB FORMAT 函數(shù) 格式化字串的說明_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、格式字符值說明0零占位符如果格式化的值在格式字符串中出現(xiàn)“0”的位置有一個(gè)數(shù)字,則此數(shù)字被復(fù)制到輸出字符串中。小數(shù)點(diǎn)前最左邊的“0”的位置和小數(shù)點(diǎn)后最右邊的“0”的位置確定總在輸出字符串中出現(xiàn)的數(shù)字范圍。“00”說明符使得值被舍入到小數(shù)點(diǎn)前最近的數(shù)字,其中零位總被舍去。例如,用“00”格式化34.5 將得到值 35。#數(shù)字占位符如果格式化的值在格式字符串中出現(xiàn)“#”的位置有一個(gè)數(shù)字,則此數(shù)字被復(fù)制到輸出字符串中。否則,輸出字符串中的此位置不存儲(chǔ)任何值。請(qǐng)注意,如果“0”不是有效數(shù)字,此說明符永不顯示“0”字符,即使“0”是字符串中唯一的數(shù)字。如果“0”是所顯示的數(shù)字中的有效數(shù)字,則顯示“0”字

2、符。“#”格式字符串使得值被舍入到小數(shù)點(diǎn)前最近的數(shù)字,其中零總被舍去。例如,用“#”格式化 34.5 將得到值 35。.小數(shù)點(diǎn)格式字符串中的第一個(gè)“.”字符確定格式化的值中的小數(shù)點(diǎn)分隔符的位置;任何其他“.”字符被忽略。用作小數(shù)點(diǎn)分隔符的實(shí)際字符由控制格式化的 NumberFormatInfo 的 NumberDecimalSeparator 屬性確定。,千位分隔符和數(shù)字比例換算“,”字符有兩種用途。首先,如果格式字符串在小數(shù)點(diǎn)(如果有左邊的兩個(gè)數(shù)字占位符(0 或 #之間包含“,”字符,則輸出將在小數(shù)點(diǎn)分隔符左邊的每三個(gè)數(shù)字之間插入千位分隔符。輸出字符串中用作小數(shù)點(diǎn)分隔符的實(shí)際字符由控制格式化

3、的當(dāng)前 NumberFormatInfo 的NumberGroupSeparator 屬性確定。其次,如果格式字符串在緊鄰小數(shù)點(diǎn)的左側(cè)包含一個(gè)或多個(gè)“,”字符,則數(shù)字在格式化之前將被“,”字符數(shù)除然后乘以 1000。例如,格式字符串“0,”將 100,000,000 簡(jiǎn)單表示為 100。使用“,”字符指示比例換算在格式化數(shù)字中不包括千位分隔符。因此,若要將數(shù)字縮小 1,000,000 倍并插入千位分隔符,應(yīng)使用格式字符串“#,#0,”。%百分比占位符在格式字符串中出現(xiàn)“%”字符將導(dǎo)致數(shù)字在格式化之前乘以 100。適當(dāng)?shù)姆?hào)插入到數(shù)字本身在格式字符串中出現(xiàn)“%”的位置。使用的百分比字符由當(dāng)前的

4、NumberFormatInfo 類確定。E0E+0E-0e0e+0e-0科學(xué)計(jì)數(shù)法如果“E”、“E+”、“E-”、“e”、“e+”或“e-”中的任何一個(gè)字符串出現(xiàn)在格式字符串中,而且后面緊跟至少一個(gè)“0”字符,則數(shù)字用科學(xué)計(jì)數(shù)法來格式化,在數(shù)字和指數(shù)之間插入“E”或“e”。跟在科學(xué)計(jì)數(shù)法指示符后面的“0”字符數(shù)確定指數(shù)輸出的最小位數(shù)。“E+”和“e+”格式指示符號(hào)字符(正號(hào)或負(fù)號(hào)應(yīng)總是置于指數(shù)前面。“E”、“E-”、“e”或“e-”格式指示符號(hào)字符僅置于負(fù)指數(shù)前面。轉(zhuǎn)義符在C#和C+的托管擴(kuò)展中,反斜杠字符使格式字符串中的下一個(gè)字符被解釋為轉(zhuǎn)義序列。它與傳統(tǒng)的格式化序列一起使用,如“n”(換

5、行。在某些語言中,轉(zhuǎn)義符本身用作文本時(shí)必須跟在轉(zhuǎn)義符之后。否則,編譯器將該字符理解為轉(zhuǎn)義符。使用字符串“”顯示“”。請(qǐng)注意,Visual Basic 中不支持此轉(zhuǎn)義符,但是 ControlChars 提供相同的功能。'ABC'"ABC"字符串引在單引號(hào)或雙引號(hào)中的字符被原樣復(fù)制到輸出字符串中,而且不影響格式化。;部分分隔符“;”字符用于分隔格式字符串中的正數(shù)、負(fù)數(shù)和零各部分。其他所有其他字符所有其他字符以文本形式復(fù)制到輸出字符串中它們出現(xiàn)的位置。請(qǐng)注意,對(duì)于固定點(diǎn)格式字符串(不包含“E0”、“E+0”、“E-0”、“e0”、“e+0”或“e-0”的字符串,數(shù)

6、字被舍入為與小數(shù)點(diǎn)右邊的數(shù)字占位符數(shù)目相同的小數(shù)位數(shù)。如果格式字符串不包含小數(shù)點(diǎn),數(shù)字被舍入為最接近的整數(shù)。如果數(shù)字位數(shù)多于小數(shù)點(diǎn)左邊數(shù)字占位符的個(gè)數(shù),多余的數(shù)字被復(fù)制到輸出字符串中緊挨著第一個(gè)數(shù)字占位符的前面。可以根據(jù)值為正、為負(fù)還是為零來為字符串應(yīng)用不同的格式化。為產(chǎn)生這種行為,自定義格式字符串可以包含最多三個(gè)用分號(hào)分隔的部分:一個(gè)部分:格式字符串應(yīng)用于所有值。兩個(gè)部分:第一部分應(yīng)用于正值和零,第二部分應(yīng)用于負(fù)值。如果要格式化的數(shù)字為負(fù),但根據(jù)第二部分中的格式舍入后為零,則最終的零根據(jù)第一部分進(jìn)行格式化。三個(gè)部分:第一部分應(yīng)用于正值,第二部分應(yīng)用于負(fù)值,第三部分應(yīng)用于零。第二部分可能為空(

7、分號(hào)間沒有任何內(nèi)容,在這種情況下,第一部分應(yīng)用于所有非零值。如果要格式化的數(shù)字為非零值,但根據(jù)第一部分或第二部分中的格式舍入后為零,則最終的零根據(jù)第三部分進(jìn)行格式化。格式化最終值時(shí),此類型的格式化忽略所有先前存在的與數(shù)字關(guān)聯(lián)的格式化。例如,使用部分分隔符時(shí),顯示的負(fù)值永遠(yuǎn)不帶負(fù)號(hào)。如果您希望格式化后的最終值帶有負(fù)號(hào),則應(yīng)明確包含負(fù)號(hào),讓它作為自定義格式說明符的組成部分。下面的示例闡釋如何使用部分分隔符產(chǎn)生格式化字符串。Visual BasicDim MyPos As Double = 19.95Dim MyNeg As Double = -19.95Dim MyZero As Double =

8、 0Dim MyString As String =MyPos.ToString("$#,#0.00;($#,#0.00;Zero"' In the U.S. English culture, MyString has the value: $19.95.MyString = MyNeg.ToString("$#,#0.00;($#,#0.00;Zero"' In the U.S. English culture, MyString has the value: ($19.95.' The minus sign is omitte

9、d by default.MyString = MyZero.ToString("$#,#0.00;($#,#0.00;Zero"' In the U.S. English culture, MyString has the value: Zero.C#double MyPos = 19.95, MyNeg = -19.95, MyZero = 0.0;string MyString = MyPos.ToString("$#,#0.00;($#,#0.00;Zero"/ In the U.S. English culture, MyString

10、has the value: $19.95.MyString = MyNeg.ToString("$#,#0.00;($#,#0.00;Zero"/ In the U.S. English culture, MyString has the value: ($19.95./ The minus sign is omitted by default.MyString = MyZero.ToString("$#,#0.00;($#,#0.00;Zero"/ In the U.S. English culture, MyString has the value

11、: Zero.下面的示例說明自定義數(shù)字格式化。Visual BasicDim myDouble As Double = 1234567890Dim myString As String = myDouble.ToString( "(# # - #" ' The value of myString is "(123 456 7890".Dim MyInt As Integer = 42MyString = MyInt.ToString( "My Number " + ControlChars.Lf + "= #&quo

12、t; ' In the U.S. English culture, MyString has the value:' "My Number' = 42".C#Double myDouble = 1234567890;String myString = myDouble.ToString( "(# # - #" ;/ The value of myString is "(123 456 7890".int MyInt = 42;MyString = MyInt.ToString( "My Number

13、n= #" ;/ In the U.S. English culture, MyString has the value:/ "My Number/ = 42".格式化日期和數(shù)字的字符串經(jīng)常要用到這個(gè), 就把幫助里面的東西大概整理了一些列在這里了.下表描述了用來格式化 DateTime 對(duì)象的標(biāo)準(zhǔn)格式說明符。格式說明符名稱說明d 短日期模式顯示由與當(dāng)前線程關(guān)聯(lián)的DateTimeFormatInfo.ShortDatePattern 屬性定義的模式或者由指定格式提供程序定義的模式。D 長(zhǎng)日期模式顯示由與當(dāng)前線程關(guān)聯(lián)的DateTimeFormatInfo.LongDa

14、tePattern 屬性定義的模式或者由指定格式提供程序定義的模式。t 短時(shí)間模式顯示由與當(dāng)前線程關(guān)聯(lián)的DateTimeFormatInfo.ShortTimePattern 屬性定義的模式或者由指定格式提供程序定義的模式。T 長(zhǎng)時(shí)間模式顯示由與當(dāng)前線程關(guān)聯(lián)的DateTimeFormatInfo.LongTimePattern 屬性定義的模式或者由指定格式提供程序定義的模式。f 完整日期/時(shí)間模式(短時(shí)間顯示長(zhǎng)日期和短時(shí)間模式的組合,由空格分隔。F 完整日期/時(shí)間模式(長(zhǎng)時(shí)間顯示由與當(dāng)前線程關(guān)聯(lián)的DateTimeFormatInfo.FullDateTimePattern 屬性定義的模式或者由

15、指定格式提供程序定義的模式。g 常規(guī)日期/時(shí)間模式(短時(shí)間顯示短日期和短時(shí)間模式的組合,由空格分隔。G 常規(guī)日期/時(shí)間模式(長(zhǎng)時(shí)間顯示短日期和長(zhǎng)時(shí)間模式的組合,由空格分隔。M 或 m 月日模式顯示由與當(dāng)前線程關(guān)聯(lián)的DateTimeFormatInfo.MonthDayPattern 屬性定義的模式或者由指定格式提供程序定義的模式。R 或 r RFC1123 模式顯示由與當(dāng)前線程關(guān)聯(lián)的DateTimeFormatInfo.RFC1123Pattern 屬性定義的模式或者由指定格式提供程序定義的模式。這是定義的標(biāo)準(zhǔn),并且屬性是只讀的;因此,無論所使用的區(qū)域性或所提供的格式提供程序是什么,它總是相同

16、的。屬性引用CultureInfo.InvariantCulture 屬性并遵照自定義模式“ddd, dd MMM yyyy HH:mm:ss GMT”。請(qǐng)注意,“GMT”中的“M”需要轉(zhuǎn)義符,因此它不被解釋。格式化并不修改 DateTime 的值,所以您必須在格式化之前將值調(diào)整為 GMT。s 可排序的日期/時(shí)間模式;符合 ISO 8601 顯示由與當(dāng)前線程關(guān)聯(lián)的DateTimeFormatInfo.SortableDateTimePattern 屬性定義的模式或者由指定格式提供程序定義的模式。屬性引用 CultureInfo.InvariantCulture 屬性,格式遵照自定義模式“yyy

17、y-MM-ddTHH:mm:ss”。u 通用的可排序日期/時(shí)間模式 顯示由與當(dāng)前線程關(guān)聯(lián)的 DateTimeFormatInfo.UniversalSortableDateTimePattern 屬性定義的模式或 者由指定格式提供程序定義的模式。因?yàn)樗嵌x的標(biāo)準(zhǔn),并且屬性是只讀的, 因此無論區(qū)域性或格式提供程序是什么,模式總是相同的。格式化遵照自定義模 式“yyyy-MM-dd HH:mm:ssZ”。格式化日期和時(shí)間時(shí)不進(jìn)行時(shí)區(qū)轉(zhuǎn)換;所以,請(qǐng) 在使用格式說明符之前將本地日期和時(shí)間轉(zhuǎn)換為通用時(shí)間。 U 通用的可排序日期/時(shí)間模式 顯示由與當(dāng)前線程關(guān)聯(lián)的 DateTimeFormatInfo.F

18、ullDateTimePattern 屬性定義的模式或者由指定格式提 供程序定義的模式。請(qǐng)注意,顯示的時(shí)間是通用時(shí)間,而不是本地時(shí)間。 Y 或 y 年月模式 顯示由與當(dāng)前線程關(guān)聯(lián)的 DateTimeFormatInfo.YearmonthPattern 屬性定義的模式或者由指定格式提供 程序定義的模式。 任何其他單個(gè)字符 未知說明符 下表描述了標(biāo)準(zhǔn)數(shù)字格式字符串。請(qǐng)注意,這些格式說明符產(chǎn)生的輸出字符 串受“區(qū)域選項(xiàng)”控制面板中的設(shè)置的影響。 使用不同設(shè)置的計(jì)算機(jī)會(huì)生成不同 的輸出字符串。 格式說明符 名稱 說明 C 或 c 貨幣 數(shù)字轉(zhuǎn)換為表示貨幣金額的字符串。 轉(zhuǎn)換由用于格式化數(shù)字的 Num

19、berFormatInfo 對(duì)象的貨幣格式信息控制。 精度說明符指示所需的小數(shù)位數(shù)。 如果省略精度說明符,則使用 NumberFormatInfo 給定的默認(rèn)貨幣精度。 D 或 d 十進(jìn)制 只有整型才支持此格式。數(shù)字轉(zhuǎn)換為十進(jìn)制數(shù)字 (0-9 的 字符串,如果數(shù)字為負(fù),則前面加負(fù)號(hào)。精度說明符指示結(jié)果字符串中所需的最 少數(shù)字個(gè)數(shù)。如果需要的話,則用零填充該數(shù)字的左側(cè),以產(chǎn)生精度說明符給定 的數(shù)字個(gè)數(shù)。 E 或 e 科學(xué)計(jì)數(shù)法(指數(shù)) 數(shù)字轉(zhuǎn)換為“-d.ddd.E+ddd”或 “-d.ddd.e+ddd”形式的字符串,其中每個(gè)“d”表示一個(gè)數(shù)字 (0-9。如果 該數(shù)字為負(fù),則該字符串以減號(hào)開頭。

20、小數(shù)點(diǎn)前總有一個(gè)數(shù)字。精度說明符指示 小數(shù)點(diǎn)后所需的位數(shù)。如果省略精度說明符,則使用默認(rèn)值,即小數(shù)點(diǎn)后六位數(shù) 字。格式說明符的大小寫指示在指數(shù)前加前綴“E”還是“e”。指數(shù)總是由正號(hào) 或負(fù)號(hào)以及最少三位數(shù)字組成。如果需要,用零填充指數(shù)以滿足最少三位數(shù)字的 要求。 F 或 f 固定點(diǎn) 數(shù)字轉(zhuǎn)換為“-ddd.ddd.”形式的字符串, 其中每個(gè)“d” 表示一個(gè)數(shù)字 (0-9。如果該數(shù)字為負(fù),則該字符串以減號(hào)開頭。精度說明符指 示所需的小數(shù)位數(shù)。如果忽略精度說明符,則使用 NumberFormatInfo 給定的默 認(rèn)數(shù)值精度。 G 或 g 常規(guī) 根據(jù)數(shù)字類型以及是否存在精度說明符, 數(shù)字會(huì)轉(zhuǎn)換為固定

21、點(diǎn) 或科學(xué)記數(shù)法的最緊湊形式。如果精度說明符被省略或?yàn)榱悖瑒t數(shù)字的類型決定 默認(rèn)精度,如下表所示。 Byte 或 SByte:3 Int16 或 UInt16:5 Int32 或 UInt32:10 Int64 或 UInt64:19 Single:7 Double:15 Decimal:29 如果用科學(xué)記數(shù)法表示數(shù)字時(shí)指數(shù)大于 -5 而且小于精度說明符, 則使用固 定點(diǎn)表示法;否則使用科學(xué)記數(shù)法。如果要求有小數(shù)點(diǎn),并且忽略尾部零,則結(jié) 果包含小數(shù)點(diǎn)。如果精度說明符存在,并且結(jié)果的有效數(shù)字位數(shù)超過指定精度, 則通過舍入刪除多余的尾部數(shù)字。使用科學(xué)記數(shù)法時(shí),如果格式說明符是“G”, 結(jié)果的指數(shù)帶

22、前綴“E”;如果格式說明符是“g”,結(jié)果的指數(shù)帶前綴“e”。 上述規(guī)則有一個(gè)例外:如果數(shù)字是 Decimal 而且省略精度說明符時(shí)。在這 種情況下總使用固定點(diǎn)表示法并保留尾部零。 N 或 n 數(shù)字 數(shù)字轉(zhuǎn)換為“-d,ddd,ddd.ddd.”格式的字符串,其中每個(gè) “d”表示一個(gè)數(shù)字 (0-9。如果該數(shù)字為負(fù),則該字符串以減號(hào)開頭。小數(shù)點(diǎn) 左邊每三個(gè)數(shù)字之間插入一個(gè)千位分隔符。精度說明符指示所需的小數(shù)位數(shù)。如 果忽略精度說明符,則使用 NumberFormatInfo 給定的默認(rèn)數(shù)值精度。 P 或 p 百分比 數(shù)字轉(zhuǎn)換為由 NumberFormatInfo.PercentNegativePattern 屬性或 NumberFormatInfo.PercentPositivePattern 屬性定義的、表示百分比的字符 串。如果數(shù)字為負(fù),則產(chǎn)生的字符串由 PercentNegativePattern 定義并以負(fù)號(hào) 開頭。已轉(zhuǎn)換的數(shù)字乘以

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論