簡體   English   中英

Windows Phone 7.5上的DateTimeConverter

[英]DateTimeConverter on Windows Phone 7.5

如何從(2012-10-10T 11:07:58:75 05:30)到(10/10/2012)獲取日期。 幫我。

首先:DateTime.ParseExact,將字符串轉換為“(2012-10-10T 11:07:58:75 05:30”到DateTime struct --- var d。

和d.tostring(“你的格式”)

在我看來,你應該解析為DateTimeOffset ,以表示你實際獲得的所有數據:

string text = "2012-10-10T11:07:58+05:30";
DateTimeOffset dto = DateTimeOffset.ParseExact
    (text, "yyyy'-'MM'-'dd'T'HH':'mm':'sszzz",
     CultureInfo.InvariantCulture);

假設輸入字符串中的最后一個“:75”實際上是一個錯誤。 這是一種非常奇怪的格式。 如果這不是一個錯誤,你可能想要:

string text = "2012-10-10T11:07:58:75+05:30";
DateTimeOffset dto = DateTimeOffset.ParseExact
    (text, "yyyy'-'MM'-'dd'T'HH':'mm':'ss':'FFFzzz",
     CultureInfo.InvariantCulture);

這將在亞毫秒范圍內處理多達3個小數位。 如果您擁有更多,則可以將模式擴展為最多7個F字符。

如果要獲取日期,則需要確定是否確實需要本地日期或轉換為UTC后的日期。 這取決於您的業務需求,但請注意其影響。 (具有相同本地日期的兩個值可能不代表相同的24小時時間段。)

如果您希望以不同的格式再次將值作為字符串,則需要第二步來格式化它,調用ToString 鑒於您的樣本具有相同的日期和月份值,我們很遺憾無法判斷您是想要MM/dd/yyyy還是dd/MM/yyyy - 但您應該考慮這是否應該是文化敏感的。 如果您可以向我們提供有關您如何使用此值的更多背景信息,我們可以提供更多建議。

暫無
暫無

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

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