XML 파일에서 날짜 / 시간에 사용할 올바른 형식은 무엇입니까?
.NET을 사용하여 XML 파일에 쓸 때 날짜 / 시간에 어떤 형식을 사용합니까? 단순히을 사용 DateTime.ToString()
합니까, 아니면 특정 형식을 사용해야합니까?
난 항상 사용 ISO 8601 형식 (예 : 2008-10-31T15:07:38.6875000-05:00
) - date.ToString("o")
. 그것은이다 XSD 날짜 형식 뿐만 아니라. 날짜와 시간 사이에 'T'를 표시하지 않으려면 필요한 경우 수동 형식 문자열을 사용할 수 있지만 기본 형식과 표준 날짜 및 시간 형식 문자열입니다 .date.ToString("yyyy-MM-dd HH:mm:ss");
편집 : XSD 또는 웹 서비스에서 생성 된 클래스를 사용하는 경우 DateTime 인스턴스를 클래스 속성에 직접 할당 할 수 있습니다. XML 텍스트를 작성하는 경우 위를 사용하십시오.
편집 : 이것은 나쁜 조언입니다. 위와 같이 "o"를 사용합니다. "s"는 잘못된 일을 합니다.
나는 항상 이것을 사용합니다 :
dateTime.ToUniversalTime().ToString("s");
스키마가 다음과 같으면 올바른 것입니다.
<xs:element name="startdate" type="xs:dateTime"/>
결과는 다음과 같습니다.
<startdate>2002-05-30T09:00:00</startdate>
여기에서 자세한 정보를 얻을 수 있습니다. http://www.w3schools.com/xml/schema_dtypes_date.asp
XML 문자열을 수동으로 어셈블하는 var.ToUniversalTime().ToString("yyyy-MM-dd'T'HH:mm:ss.fffffffZ"));
경우 공식 XML 날짜 시간 형식을 출력합니다. 그러나 내장 된 직렬화 방법을 사용하면 형식에 대해 걱정할 필요가 없습니다.
DTD는 무엇을 말해야합니까?
XML 파일이 다른 기존 소프트웨어 (예 : SOAP)와 통신하기위한 것이라면 해당 소프트웨어가 예상하는 바를 확인하십시오.
XML 파일이 존재하지 않는 소프트웨어 (예 : 작성중인 소프트웨어)와의 직렬화 또는 통신 용인 경우이를 정의 할 수 있습니다. 이 경우 선택한 언어로 구문 분석하기 쉽고 사람이 읽기 쉬운 것을 제안합니다. 예를 들어, 귀하의 언어 (VB.NET 또는 C # .NET 또는 기타)를 통해 ISO 날짜 (YYYY-MM-DD)를 쉽게 구문 분석 할 수 있다면 그게 제가 제안하는 것입니다.
XmlConvert
클래스는 시설의 이러한 종류의를 제공합니다. 특히 DateTimes에 대해서는 사용되지 않는 메서드에주의하십시오. 참조 : https://stackoverflow.com/a/7457718/1288109
'IT story' 카테고리의 다른 글
빈 배열 확인 : 개수 대 비어 있음 (0) | 2020.08.26 |
---|---|
ReSharper를 사용하여 기존 인터페이스에 메서드 추출 (0) | 2020.08.26 |
Hibernate : 엔티티 클래스를 기반으로 db 테이블 자동 생성 / 업데이트 (0) | 2020.08.26 |
스크립트 또는 저장 프로 시저에서 일회용 함수를 만들 수 있습니까? (0) | 2020.08.26 |
기록에 영향을주지 않고 해시 탐색을 사용할 수 있습니까? (0) | 2020.08.26 |