簡體   English   中英

格式化DateTime - 忽略文化

[英]Formatting DateTime - ignore culture

我需要將日期格式化為以下格式:

Md-yyyy

我試過用:

string.Format("{0:Md-yyyy}", DateTime.Now)

但輸出字符串將取決於運行它的計算機上的CurrentCulture,因此有時輸出可能是07/09/201407.09.2014而不是09-07-2014

我怎樣才能輕易地阻止它根據文化轉換它並將其視為文字字符串?

使用CultureInfo.InvariantCulture作為culture或provider參數。

String.Format(CultureInfo.InvariantCulture, "{0:M-d-yyyy}", DateTime.Now)

使用CultureInfo.InvariantCulture作為IFormatProvider參數:

DateTime.Now.ToString("M-d-yyyy", CultureInfo.InvariantCulture);

您可以使用以下方法設置程序的文化:

Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture;`

如果你願意,你也可以使用特定的文化(我認為en-US是你需要的)

使用以下內容:

DateTime.Now.ToString("d", DateTimeFormatInfo.InvariantInfo);

或應用其他格式規范,詳見http://msdn.microsoft.com/en-us/library/az4se3k1%28v=vs.110%29.aspx

與您的情況相關,它可以寫成:

DateTime.Now.ToString("M-d-yyyy", DateTimeFormatInfo.InvariantInfo);

問候,

您可以使用DateTime對象上的.ToString()方法來格式化它,但是您可以使用它。 您的代碼看起來像這樣:

DateTime.Now.ToString("Md-yyyy");

有關格式化日期時間的更多信息可以在MSDN上找到: http//msdn.microsoft.com/en-us/library/zdtaw1bw%28v=vs.110%29.aspx

你可以試試date.ToString(“MM / dd / yy”,yyyymmddFormat);

或嘗試在此鏈接中查看http://social.msdn.microsoft.com/Forums/en-US/af4f5a1e-f81d-47fe-981d-818e785b8847/convert-string-to-datetime-object

如果您願意,可以將字符串強制為標准格式

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM