2009-05-29 2 views
2

예 : "20080807144334.410187-180는"(-180은 GMT 마이너스 세 시간을 의미 리오 데 자네이로를이 경우에..) 내가 WMI를 통한 파일 생성/변경/액세스 시간을 쿼리 할 때 그 문자열 형식은 즉 (반환"YYYYMMDDHHMMSS.UUUUUU-TZO"형식을 C# DateTime으로 변환하는 API가 있습니까?

완전히 작동하지 않음; here 참조). 나는 문자열 위치에서 년, 월 등을 추출하여 바보 같은 방식으로 파싱 할 수 있다고 생각합니다. 그러나 나는 바퀴를 재발 명하고 싶지 않습니다. System.DateTime의 생성자는 해당 형식을 처리하지 않습니다. 계속해서 바보 같은 방식으로해야할까요, 아니면 더 좋은 것이 있습니까?

답변

8

구문 분석시 사용할 특정 형식을 사용하려면 DateTime.ParseExact 또는 .TryParseExact을 사용할 수 있어야합니다.

그러나 나는 당신이이 형식으로 시간대를 읽을 수는 없다고 생각합니다. (실제로 어떤 형식 으로든 시간대를 읽는 방법을 알 수는 없지만)

그것의 나머지는 다음과 같이 보일 것이다 :

DateTime.ParseExact("20080807144334.410187", "yyyyMMddHHmmss.ffffff", System.Globalization.CultureInfo.InvariantCulture) 
+0

고마워요! 그것은 작동하고 그것은 바퀴를 재발견하지 않지만, 제우스에 의해 그것은 추한 것입니다. 보류 : retring.CreationDate = DateTime.ParseExact (((string) queryObj [ "CreationDate"]) 하위 문자열 (0,21), "yyyyMMddHHmmss.ffffff", System.Globalization.CultureInfo.InvariantCulture); – JCCyC

관련 문제