C#中string.format用法詳解
本文實(shí)例總結(jié)了C#中string.format用法。分享給大家供大家參考。具體分析如下:
String.Format 方法的幾種定義:
String.Format (String, Object) 將指定的 String 中的格式項(xiàng)替換為指定的 Object 實(shí)例的值的文本等效項(xiàng)。
String.Format (String, Object[]) 將指定 String 中的格式項(xiàng)替換為指定數(shù)組中相應(yīng) Object 實(shí)例的值的文本等效項(xiàng)。
String.Format (IFormatProvider, String, Object[]) 將指定 String 中的格式項(xiàng)替換為指定數(shù)組中相應(yīng) Object 實(shí)例的值的文本等效項(xiàng)。指定的參數(shù)提供區(qū)域性特定的格式設(shè)置信息。
String.Format (String, Object, Object) 將指定的 String 中的格式項(xiàng)替換為兩個(gè)指定的 Object 實(shí)例的值的文本等效項(xiàng)。
String.Format (String, Object, Object, Object) 將指定的 String 中的格式項(xiàng)替換為三個(gè)指定的 Object 實(shí)例的值的文本等效項(xiàng)。
常用的格式化數(shù)值結(jié)果表
字符 | 說明 | 示例 | 輸出 |
C | 貨幣 | string.Format("{0:C3}", 2) | $2.000 |
D | 十進(jìn)制 | string.Format("{0:D3}", 2) | 002 |
E | 科學(xué)計(jì)數(shù)法 | 1.20E+001 | 1.20E+001 |
G | 常規(guī) | string.Format("{0:G}", 2) | 2 |
N | 用分號(hào)隔開的數(shù)字 | string.Format("{0:N}", 250000) | 250,000.00 |
X | 十六進(jìn)制 | string.Format("{0:X000}", 12) | C |
string.Format("{0:000.000}", 12.2) | 012.200 |
常用的幾種實(shí)例
1、字符串的數(shù)字格式
string str1 =string.Format("{0:N1}",56789);?????????????? //result: 56,789.0 string str2 =string.Format("{0:N2}",56789);?????????????? //result: 56,789.00 string str3 =string.Format("{0:N3}",56789);?????????????? //result: 56,789.000 string str8 =string.Format("{0:F1}",56789);?????????????? //result: 56789.0 string str9 =string.Format("{0:F2}",56789);?????????????? //result: 56789.00 string str11 =(56789 / 100.0).ToString("#.##");?????????? //result: 567.89 string str12 =(56789 / 100).ToString("#.##");???????????? //result: 567
2、格式化貨幣(跟系統(tǒng)的環(huán)境有關(guān),中文系統(tǒng)默認(rèn)格式化人民幣,英文系統(tǒng)格式化美元)
string.Format("{0:C}",0.2) 結(jié)果為:¥0.20 (英文操作系統(tǒng)結(jié)果:$0.20)
默認(rèn)格式化小數(shù)點(diǎn)后面保留兩位小數(shù),如果需要保留一位或者更多,可以指定位數(shù)
string.Format("{0:C1}",23.15)
結(jié)果為:¥23.2 (截取會(huì)自動(dòng)四舍五入)
格式化多個(gè)Object實(shí)例
string.Format("市場(chǎng)價(jià):{0:C},優(yōu)惠價(jià){1:C}",23.15,19.82)
3、格式化十進(jìn)制的數(shù)字(格式化成固定的位數(shù),位數(shù)不能少于未格式化前,只支持整形)
string.Format("{0:D3}",23) //結(jié)果為:023 string.Format("{0:D2}",1223) //結(jié)果為:1223,(精度說明符指示結(jié)果字符串中所需的最少數(shù)字個(gè)數(shù)。)
4、用分號(hào)隔開的數(shù)字,并指定小數(shù)點(diǎn)后的位數(shù)
string.Format("{0:N}", 14200) //結(jié)果為:14,200.00 (默認(rèn)為小數(shù)點(diǎn)后面兩位) string.Format("{0:N3}", 14200.2458) //結(jié)果為:14,200.246 (自動(dòng)四舍五入)?
5、格式化百分比
string.Format("{0:P}", 0.24583) //結(jié)果為:24.58% (默認(rèn)保留百分的兩位小數(shù)) string.Format("{0:P1}", 0.24583) //結(jié)果為:24.6% (自動(dòng)四舍五入)
6、零占位符和數(shù)字占位符
string.Format("{0:0000.00}", 12394.039) //結(jié)果為:12394.04 string.Format("{0:0000.00}", 194.039) //結(jié)果為:0194.04 string.Format("{0:###.##}", 12394.039) //結(jié)果為:12394.04 string.Format("{0:####.#}", 194.039) //結(jié)果為:194
下面的這段說明比較難理解,多測(cè)試一下實(shí)際的應(yīng)用就可以明白了。
零占位符: 如果格式化的值在格式字符串中出現(xiàn)“0”的位置有一個(gè)數(shù)字,則此數(shù)字被復(fù)制到結(jié)果字符串中。小數(shù)點(diǎn)前最左邊的“0”的位置和小數(shù)點(diǎn)后最右邊的“0”的位置確定總在結(jié)果字符串中出現(xiàn)的數(shù)字范圍。 “00”說明符使得值被舍入到小數(shù)點(diǎn)前最近的數(shù)字,其中零位總被舍去。
數(shù)字占位符: 如果格式化的值在格式字符串中出現(xiàn)“#”的位置有一個(gè)數(shù)字,則此數(shù)字被復(fù)制到結(jié)果字符串中。否則,結(jié)果字符串中的此位置不存儲(chǔ)任何值。
請(qǐng)注意,如果“0”不是有效數(shù)字,此說明符永不顯示“0”字符,即使“0”是字符串中唯一的數(shù)字。如果“0”是所顯示的數(shù)字中的有效數(shù)字,則顯示“0”字符。 “##”格式字符串使得值被舍入到小數(shù)點(diǎn)前最近的數(shù)字,其中零總被舍去。
7、日期格式化
string.Format("{0:d}",System.DateTime.Now) //結(jié)果為:2009-3-20 (月份位置不是03) string.Format("{0:D}",System.DateTime.Now) //結(jié)果為:2009年3月20日 string.Format("{0:f}",System.DateTime.Now) //結(jié)果為:2009年3月20日 15:37 string.Format("{0:F}",System.DateTime.Now) //結(jié)果為:2009年3月20日 15:37:52 string.Format("{0:g}",System.DateTime.Now) //結(jié)果為:2009-3-20 15:38 string.Format("{0:G}",System.DateTime.Now) //結(jié)果為:2009-3-20 15:39:27 string.Format("{0:m}",System.DateTime.Now) //結(jié)果為:3月20日 string.Format("{0:t}",System.DateTime.Now) //結(jié)果為:15:41 string.Format("{0:T}",System.DateTime.Now) //結(jié)果為:15:41:50
希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。
- Java字符串格式化功能?String.format用法詳解
- Java String.format()的用法
- Java之String.format()方法案例講解
- 快速入門介紹Java中強(qiáng)大的String.format()
- Java中String.format的使用方法總結(jié)
- JavaScript實(shí)現(xiàn)格式化字符串函數(shù)String.format
- JAVA字符串格式化-String.format()的使用
- String.Format大全(C# Java)
- javascript模擬實(shí)現(xiàn)C# String.format函數(shù)功能代碼
- js中的string.format函數(shù)代碼
- javascript下string.format函數(shù)補(bǔ)充
- javascript下利用arguments實(shí)現(xiàn)string.format函數(shù)
- asp.net String.format中大括號(hào)的加入方法
- 為javascript添加String.Format方法
相關(guān)文章
C#實(shí)現(xiàn)撲克游戲(21點(diǎn))的示例代碼
21點(diǎn)又名黑杰克,該游戲由2到6個(gè)人玩,使用除大小王之外的52張牌,游戲者的目標(biāo)是使手中的牌的點(diǎn)數(shù)之和不超過21點(diǎn)且盡量大。本文將用C#實(shí)現(xiàn)這一經(jīng)典游戲,需要的可以參考一下2022-08-08總結(jié)C#動(dòng)態(tài)調(diào)用WCF接口的兩種方法
這篇文章給大家總結(jié)了C#動(dòng)態(tài)調(diào)用WCF接口的兩種方法,大家可以根據(jù)自己的需求選擇對(duì)應(yīng)的方式,下面來一起看看。2016-09-09WinForm通過操作注冊(cè)表實(shí)現(xiàn)限制軟件使用次數(shù)的方法
這篇文章主要介紹了WinForm通過操作注冊(cè)表實(shí)現(xiàn)限制軟件使用次數(shù)的方法,結(jié)合實(shí)例形式分析了WinForm操作注冊(cè)表的原理、步驟與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-06-06C#中OpenCvSharp 通過特征點(diǎn)匹配圖片的方法
這篇文章主要介紹了OpenCvSharp 通過特征點(diǎn)匹配圖片的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09C#使用SQL DataAdapter數(shù)據(jù)適配代碼實(shí)例
今天小編就為大家分享一篇關(guān)于C#使用SQL DataAdapter數(shù)據(jù)適配代碼實(shí)例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-10-10C#使用Stack<T>進(jìn)行堆棧設(shè)計(jì)的實(shí)現(xiàn)
堆棧代表了一個(gè)后進(jìn)先出的對(duì)象集合,當(dāng)您需要對(duì)各項(xiàng)進(jìn)行后進(jìn)先出的訪問時(shí),則使用堆棧,本文主要介紹了C#使用Stack<T>類進(jìn)行堆棧設(shè)計(jì)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),感興趣的可以了解一下2024-03-03