시간 스탬프를 읽는 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 개체를 가져올 수 있습니다.
var result = DateTime.ParseExact(innerText, "yyyy M d H m ss", CultureInfo.InvariantCulture);
형식이 항상 동일하면 문자열을 구문 분석하고 DateTime 클래스의 생성자 오버로드를 사용하여 원하는 DateTime과 같은 유효한 DateTime을 만들 수 있습니다. https://msdn.microsoft.com/en-us/library/272ba130(v=vs.110).aspx – Max
DateTime.ParseExact() 메서드를 사용하여 DateTime을 가져올 수 있습니다. – Adwaenyth