ToString格式化

来源:http://www.cnblogs.com/AloneZ/archive/2017/08/24/7424355.html
-Advertisement-
Play Games

Int.ToString(format): 格式字元串採用以下形式:Axx,其中 A 為格式說明符,指定格式化類型,xx 為精度說明符,控制格式化輸出的有效位數或小數位數,具體如下: 格式說明符 說明 示例 輸出 C 貨幣 2.5.ToString("C") ¥2.50 D 十進位數 25.ToSt ...


 

Int.ToString(format):

格式字元串採用以下形式:Axx,其中 A 為格式說明符,指定格式化類型,xx 為精度說明符,控制格式化輸出的有效位數或小數位數,具體如下:

格式說明符
說明 示例 輸出
C 貨幣 2.5.ToString("C") ¥2.50
D 十進位數 25.ToString("D5") 00025
E 科學型 25000.ToString("E") 2.500000E+005
F 固定點 25.ToString("F2") 25.00
G 常規 2.5.ToString("G") 2.5
N 數字 2500000.ToString("N") 2,500,000.00
X 十六進位 255.ToString("X") FF

DateTime.ToString(format):

以下格式只能單獨使用,表示特定的格式:

  • d ShortDatePattern
  • D LongDatePattern
  • f 完整日期和時間(長日期和短時間)
  • F FullDateTimePattern(長日期和長時間)
  • g 常規(短日期和短時間)
  • G 常規(短日期和長時間)
  • m、M MonthDayPattern
  • r、R RFC1123Pattern
  • s 使用當地時間的 SortableDateTimePattern(基於 ISO 8601)
  • t ShortTimePattern
  • T LongTimePattern
  • u UniversalSortableDateTimePattern 用於顯示通用時間的格式
  • U 使用通用時間的完整日期和時間(長日期和長時間)
  • y、Y YearMonthPattern 

以下格式可以組合使用,格式化出不同的日期顯示格式:

  • d 月中的某一天。一位數的日期沒有前導零。
  • dd 月中的某一天。一位數的日期有一個前導零。
  • ddd 周中某天的縮寫名稱,在 AbbreviatedDayNames 中定義。
  • dddd 周中某天的完整名稱,在 DayNames 中定義。
  • M 月份數字。一位數的月份沒有前導零。
  • MM 月份數字。一位數的月份有一個前導零。
  • MMM 月份的縮寫名稱,在 AbbreviatedMonthNames 中定義。
  • MMMM 月份的完整名稱,在 MonthNames 中定義。
  • y 不包含紀元的年份。如果不包含紀元的年份小於 10,則顯示不具有前導零的年份。
  • yy 不包含紀元的年份。如果不包含紀元的年份小於 10,則顯示具有前導零的年份。
  • yyyy 包括紀元的四位數的年份。
  • gg 時期或紀元。如果要設置格式的日期不具有關聯的時期或紀元字元串,則忽略該模式。
  • h 12 小時制的小時。一位數的小時數沒有前導零。
  • hh 12 小時制的小時。一位數的小時數有前導零。
  • H 24 小時制的小時。一位數的小時數沒有前導零。
  • HH 24 小時制的小時。一位數的小時數有前導零。
  • m 分鐘。一位數的分鐘數沒有前導零。
  • mm 分鐘。一位數的分鐘數有一個前導零。
  • s 秒。一位數的秒數沒有前導零。
  • ss 秒。一位數的秒數有一個前導零。
  • f 秒的小數精度為一位。其餘數字被截斷。
  • ff 秒的小數精度為兩位。其餘數字被截斷。
  • fff 秒的小數精度為三位。其餘數字被截斷。
  • ffff 秒的小數精度為四位。其餘數字被截斷。
  • fffff 秒的小數精度為五位。其餘數字被截斷。
  • ffffff 秒的小數精度為六位。其餘數字被截斷。
  • fffffff 秒的小數精度為七位。其餘數字被截斷。
  • t 在 AMDesignator 或 PMDesignator 中定義的 AM/PM 指示項的第一個字元(如果存在)。
  • tt 在 AMDesignator 或 PMDesignator 中定義的 AM/PM 指示項(如果存在)。
  • z 時區偏移量(“+”或“-”後面僅跟小時)。一位數的小時數沒有前導零。例如,太平洋標準時間是“-8”。
  • zz 時區偏移量(“+”或“-”後面僅跟小時)。一位數的小時數有前導零。例如,太平洋標準時間是“-08”。
  • zzz 完整時區偏移量(“+”或“-”後面跟有小時和分鐘)。一位數的小時數和分鐘數有前導零。例如,太平洋標準時間是“-08:00”。
  • : 在 TimeSeparator 中定義的預設時間分隔符。
  • / 在 DateSeparator 中定義的預設日期分隔符。
  • % c 其中 c 是格式模式(如果單獨使用)。如果格式模式與原義字元或其他格式模式合併,則可以省略“%”字元。
  • " c 其中 c 是任意字元。照原義顯示字元。若要顯示反斜杠字元,請使用“""”。

    DateTime.ToString() 函數有四個重載。一般用得多的就是不帶參數的那個了。殊不知, DateTime.ToString(string format) 功能更強大,能輸出不同格式的日期。以下把一些情況羅列出來,供大家參考。有些在 MSDN 上有的就沒有列出來了。

    1.           y 代表年份,註意是小寫的 y ,大寫的Y並不代表年份。

    2.           M 表示月份。

    3.           d 表示日期,註意 D 並不代表什麼。

    4.           h 或 H 表示小時, h 用的是 12 小時制, H 用的是 24 小時制。

    5.           m 表示分鐘。

    6.           s 表示秒。註意 S 並不代表什麼。

格式

輸出

示例

y

7

string yy = DateTime.Now.ToString("y-MM")

yy="7-05"

yy

07

string yy = DateTime.Now.ToString("yy-MM")

yy="07-05"

yyy 或更多的 y

1984

string yy = DateTime.Now.ToString("yyyy");

yy="2007"

M

5.

string mon = DateTime.Parse("1984-05-09")ToString("yyyy-M")

mon = "1984-5"

MM

05.

string mon = DateTime.Parse("1984-05-09")ToString("M M ")

mon = "05"

MMM

如果是中文版的操作系統,則會輸出:五月 .

如果是英文操作系統,則輸入月份前三個字母的簡寫:May

string mon = DateTime.Parse("2006-07-01").ToString("MMM")

英文版操作系統: Jul

中文版操作系統:七月

MMMM 或更多的M

如果是中文版的操作系統,則會輸出:五月 .

如果是英文操作系統,則輸入月份的全寫

string mon = DateTime.Parse("2006-07-01").ToString("MMM")

英文版操作系統: July

中文版操作系統:七月

日期或星期

d

9

string dd= DateTime.Parse("1984-05-09")ToString("d")

dd= "9"

 

dd

09

string dd= DateTime.Parse("1984-05-09")ToString("dd")

dd= "09"

ddd

如果是中文版的操作系統,則會輸出星期,如星期三。 .

如果是英文操作系統,則輸出星期的簡寫:如

Wed

string dd = DateTime.Parse("2006-07-01").ToString("ddd")

英文版操作系統: Wed

中文版操作系統:星期三

dddd 或更多的 d

如果是中文版的操作系統,則會輸出星期,如星期三。 .

如果是英文操作系統,則輸出星期:如

Wednesday

string dd = DateTime.Parse("2006-07-01").ToString("dddd")

英文版操作系統: Wednesday

中文版操作系統:星期三

小時

h

小時範圍: 1-12

string hh = DateTime.Now.ToString(“h”);

hh = 8

hh 或更多的 h

小時範圍: 1-12

string hh = DateTime.Now.ToString(“hh”);

hh = 08

H

小時範圍: 0-23

string hh = DateTime.Now.ToString(“yyyy-H”);

hh = 2006-8

HH 或更多的 H

小時範圍: 0-23

string hh = DateTime.Now.ToString(“yyyy-HH”);

hh = 2006-08

string hh = DateTime.Pare(“2006-7-4 18:00:00”).ToString(“yyyy-HH”);

hh = 2006-18

分鐘

m

6

string mm = DateTime.Now.ToString("yyyy-MM-dd-m");

mm = “2006-07-01-6”;

mm 或更多的 m

06

string mm = DateTime.Now.ToString("yyyy-MM-dd-mm");

mm = “2006-07-01-06”;

s

6

string mm = DateTime.Now.ToString("yyyy-MM-dd-s");

mm = “2006-07-01-6”;

ss 或更多的 s

06

string mm = DateTime.Now.ToString("yyyy-MM-dd-ss");

mm = “2006-07-01-06”;

 

在String.Format中使用格式化:

 在String.Format方法中也可以格式化這些結構對象,這些格式化的格式包含在“{}”之間,用“:”隔開。“:”前面為String.Format的索引值,和一般格式化一樣,而“:”後面則是這些結構的格式化類型。如果使用占位符,則和索引之間使用“,”分割,正數表示右對齊,負數表示左對齊,而絕對值表示所占的字元寬度數,例如:

 

 

string.Format("the value is {0,7:f3}",123.45);

//結果 the value is 123.450

其中:7表示占位符(右對齊),占7位,如果使用-7則表示左對齊,占七位。

 

 部分內容轉載自:

http://www.cnblogs.com/huangting2009/archive/2009/02/09/1386596.html

 

       
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 三層架構 常見架構: 開發中常見的23種設計模式: 創建型模式,共五種:工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式。 結構型模式,共七種:適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式、組合模式、享元模式。 行為型模式,共十一種:策略模式、模板方法模式、觀察者模式、迭代子模式、 ...
  • 1 private string GetMD5(string sDataIn) 2 { 3 MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); 4 byte[] bytValue, bytHash; 5 byt... ...
  • ServiceHub.DataWarehouseHost.exe記憶體泄漏問題的處理。 ...
  • 1 using System; 2 using System.Reflection; 3 4 namespace DynamicCall 5 { 6 class Program 7 { 8 static void Main(string[] args) 9 { 10 Console.WriteLin... ...
  • 前不久,在工作中由於預設(xihuan)使用Async、Await關鍵字受到了很多質問,所以由此引發這篇博文“為什麼我們要用Async/Await關鍵字”,請聽下麵分解: Async/Await關鍵字 Visual Studio(.net framework 4.5)提供了非同步編程模型,相比之前實現 ...
  • IO操作的MDA(Direct memory access)模式:直接訪問記憶體,是一種不經過CPU而直接進行記憶體數據存儲的數據交換模式,幾乎可以不損耗CPU的資源; CLR所提供的非同步編程模型就是充分利用硬體的DMA功能來釋放CPU的壓力;使用線程池進行管理,非同步將工作移交給線程池中的某個工作線程來 ...
  • Control.Dispatcher.BeginInvoke里的邏輯由UI線程執行,如果內部包含耗時操作就會造成界面卡住。 Action.BeginInvoke里的邏輯,將在一個新開的線程中執行,而不是UI線程,所以不會造成界面卡住。但其內部不能直接對UI操作,所以若需要訪問UI,需要將訪問UI的那 ...
  • 現在,你有一個MVC架構的web項目,你要完成一個註冊功能。 前臺傳了3個值到你的控制器,分別是賬號、密碼、郵箱。 如圖:現在你要在控制器裡面判斷,賬號名稱、密碼、郵箱不能為空,並且名稱和密碼不超過16位。 上面這個圖只是個理想中的小例子,實際開發情況是,可能一次性要傳十幾個欄位甚至更多。 那麼在實 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...