簡體   English   中英

將字符串格式轉換為 mm/dd/yyyy 中的日期時間

[英]Converting string format to datetime in mm/dd/yyyy

我必須將 mm/dd/yyyy 格式的字符串轉換為日期時間變量,但它應該保留為 mm/dd/yyyy 格式。

string strDate = DateTime.Now.ToString("MM/dd/yyyy");

請幫忙。

您正在尋找DateTime.Parse()方法( MSDN 文章

所以你可以這樣做:

var dateTime = DateTime.Parse("01/01/2001");

這將為您提供鍵入 object 的DateTime

如果您需要指定要使用的日期格式,您可以使用DateTime.ParseExactMSDN 文章

你會在這種情況下使用(你使用英式日期格式的地方):

string[] formats= { "dd/MM/yyyy" }
var dateTime = DateTime.ParseExact("01/01/2001", formats, new CultureInfo("en-US"), DateTimeStyles.None);

月份部分需要大寫的M

string strDate = DateTime.Now.ToString("MM/dd/yyyy");

小寫m用於輸出(和解析)一分鍾(例如h:mm )。

例如,完整的日期時間字符串可能如下所示:

string strDate = DateTime.Now.ToString("MM/dd/yyyy h:mm");

注意大寫/小寫的mM差異。


此外,如果您將始終處理相同的日期時間格式字符串,則可以通過將它們編寫為 C# 擴展方法來使其更容易。

public static class DateTimeMyFormatExtensions
{
  public static string ToMyFormatString(this DateTime dt)
  {
    return dt.ToString("MM/dd/yyyy");
  }
}

public static class StringMyDateTimeFormatExtension
{
  public static DateTime ParseMyFormatDateTime(this string s)
  {
    var culture = System.Globalization.CultureInfo.CurrentCulture;
    return DateTime.ParseExact(s, "MM/dd/yyyy", culture);
  }
}

示例:在日期時間/字符串之間進行轉換

DateTime now = DateTime.Now;

string strNow = now.ToMyFormatString();
DateTime nowAgain = strNow.ParseMyFormatDateTime();

請注意,沒有辦法存儲自定義DateTime格式信息以用作default ,如.NET大多數字符串格式取決於當前設置的文化,即

System.Globalization.CultureInfo.CurrentCulture.

您可以做的唯一簡單方法是滾動自定義擴展方法。

此外,另一種簡單的方法是為您的 DateTime 使用不同的“容器”或“包裝器”class,即一些特殊的 class 定義了explicit operator ,可以自動轉換為日期時間/字符串或從日期時間/字符串轉換。 但那是危險的領域。

解決方案

DateTime.Now.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture)

我喜歡這個

var datetoEnter= DateTime.ParseExact(createdDate, "dd/mm/yyyy", CultureInfo.InvariantCulture);

您也可以通過這樣做來更改格式

string fecha = DateTime.Now.ToString(format:"dd-MM-yyyy");

// 這將"/"更改為"-"

以下對我有用。

string strToday = DateTime.Today.ToString("MM/dd/yyyy");

暫無
暫無

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

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