簡體   English   中英

轉換日期時間格式?

[英]Convert date time format?

我正在嘗試將12/20/2013 17:40格式的日期時間轉換為以下格式

20 Dec 2013 05:40 pm 怎么可能?

您需要使用DateTime.TryParseExact 這應該做

string originalDate = "2/20/2013 17:40";
DateTime parsedDate;
if (DateTime.TryParseExact(originalDate, "M/dd/yyyy HH:mm", CultureInfo.InvariantCulture, DateTimeStyles.None, out parsedDate))
{
     string requiredFormat = parsedDate.ToString("dd MMM yyyy hh:mm ttt");
}

輸出:

20 Feb 2013 05:40 PM
mydatetime.ToString("dd MMM yyyy hh:mm tt");
dt.ToString("dd MMM yyyy hh:mm tt");
dateTime.ToString("dd MMM yyyy hh:mm tt");

方法一:如果你有String格式的日期時間

String str = "12/20/2013 17:40";//20 Dec 2013 05:40 pm
DateTime result;
string date="";
if (DateTime.TryParseExact(str, "MM/dd/yyyy HH:mm", CultureInfo.InvariantCulture, DateTimeStyles.None, out result))
date=result.ToString("dd MMM yyyy hh:mm tt");  

方法 2:如果DateTime變量中有日期時間。

String strdatetime=datetime.ToString("dd MMM yyyy hh:mm tt");  
DateTime time = DateTime.Now;
Console.WriteLine(time.ToString("dd MMM yyyy hh:mm tt"));

您可以使用格式字符串:

這是從 1 分鍾谷歌:

http://www.csharp-examples.net/string-format-datetime/ http://www.dotnetperls.com/datetime-format

首先, DateTime沒有格式,字符串有..

如果您的12/20/2013 17:40DateTime ,則可以使用DateTime.ToString(String, IFormatProvider)方法對其進行格式化;

date.ToString("dd MMM yyyy hh:mm tt", CultureInfo.InvariantCulture);

如果您的12/20/2013 17:40string ,那么您可以使用DateTime.ParseExact(String, String, IFormatProvider)方法,例如;

string s = "12/20/2013 17:40";
var date = DateTime.ParseExact(s, "MM/dd/yyyy HH:mm", CultureInfo.InvariantCulture);
Console.WriteLine(date.ToString("dd MMM yyyy hh:mm tt", CultureInfo.InvariantCulture));

輸出將是;

20 Dec 2013 05:40 PM

這里有一個demonstration

有關更多信息,請查看;

C# 6.0您可以使用字符串插值來顯示格式化的日期。

DateTime date = DateTime.Parse("12/20/2013 17:40");
string formattedDate = $"{date: dd MMM yyyy hh:mm tt}";

暫無
暫無

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

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