我有一個XML文件,我從中讀取時間戳。當使用.InnerText
閱讀這些時間戳我會得到這個爲每個節點:將字符串從xml轉換爲DateTime
2016 6 9 15 8 28
我的目標是到字符串轉換成以下格式:
2016-06-09T15:08:28.000000+00:00
是否有這樣做的任何解決方案?
XML例如:
我有一個XML文件,我從中讀取時間戳。當使用.InnerText
閱讀這些時間戳我會得到這個爲每個節點:將字符串從xml轉換爲DateTime
2016 6 9 15 8 28
我的目標是到字符串轉換成以下格式:
2016-06-09T15:08:28.000000+00:00
是否有這樣做的任何解決方案?
XML例如:
最好的方法是從XML獲取日期的每個組件。如果你想開始使用InnerText屬性,請嘗試使用:
var input = "2016 6 9 15 8 28 ";
var parts = input.Split(new char[] { ' ' },
StringSplitOptions.RemoveEmptyEntries)
.Select(n => Int32.Parse(n)).ToArray();
var dt = new DateTime(parts[0], parts[1], parts[2], parts[3], parts[4], parts[5]);
我更喜歡上面Alex提出的方法! :-)
首先,解析年,月,日,時,分,秒從XML爲整數,然後使用日期時間的構造函數:
DateTime date = new DateTime(int year, int month, int day, int hour, int minute, int seconds);
然後使用format strings之一格式化您的日期。
如果字符串將始終採用相同格式,則可以使用DateTime.ParseExact來獲取DateTime對象。
var result = DateTime.ParseExact(innerText, "yyyy M d H m ss", CultureInfo.InvariantCulture);
如果格式總是保持不變,則可以解析該字符串並使用DateTime類的構造函數重載來創建一個您想要的DateTime。請參閱https://msdn.microsoft.com/en-us/library/272ba130(v=vs.110).aspx – Max
您可以嘗試使用'DateTime.ParseExact()'方法從中獲取DateTime。 – Adwaenyth