한 달 길이, 도약 등을 고려하는 시간 범위를 저장하고 조작하는 방법이 있습니까?

StackOverflow https://stackoverflow.com/questions/1608175

문제

나는 이것을 직접 작성하려고했지만, 이것이 존재해야한다는 것을 알고 있으며, 나는 단지 나를 제대로 이끌어 줄 모든 Google 키워드를 피할 수 있습니다.

나는 d, m, y가 며칠, 달, 몇 년인 dddmmmyyy와 같은 것을 찾고있을 것입니다. 따라서 00103000은 3 개월과 하루의 범위를 나타내거나 000000001은 1 년의 범위를 나타냅니다. 이상적 으로이 형식은 또한 한 달에 다양한 일수, 도약 연도 등과 같은 타임 스팬 계산의 모든 함정을 고려할 수있는 표준 적용 방법을 갖습니다.

여기에서 요청한 것처럼 알려진 두 개의 알려진 타임 스탬프 사이의 시간대를 계산할 방법을 찾고 있지 않습니다.C#의 상대 시간 계산), 나는 알려진 날짜에서 두 번째 알 수없는 날짜를 결정하는 데 사용될 시간을 나타내는 특정 문자열 형식과 같은 것을 찾고 있습니다.

예를 들어, 위의 가상 형식을 사용하는 것과 같은 : "2009 년 9 월 15 일부터 00103000이 될 날짜를 계산하면"2009 년 12 월 16 일 (2009 년 12 월 16 일) "이되면 9 월 15 일 이후 3 개월이 지났습니다.

도움이 되었습니까?

해결책

나는 그것을 보는 것이 좋습니다 ISO 8061 지속 시간 형식. 주어진 날짜에 구문 분석하고 적용하기 쉬운 일뿐만 아니라 많은 리소스가있는 잘 알려진 표준입니다.

두 지점에서 지속 시간을 결정하는 것은 약간 까다 롭지 만, 응용 프로그램의 입력이 없으면 1-3 월에서 1 월 1 일까지 3 개월 또는 92 일인지 확실하지 않습니다. 그럼에도 불구하고, 형식은 예를 들어 0.25 년뿐만 아니라 동일하게 잘 표현할 수 있습니다.

다른 팁

이것의 가장 단순하고 가장 일반적인 표현은 숫자입니다. 시간 범위의 초 수 (필요에 따라 분수 될 수도 있고 아닐 수도 있음). 이미 많은 시간 도서관 시대 이후 몇 초로 시간을 나타냅니다, 따라서 이것은 시간의 추가와 뺄셈을 사소하게 만듭니다. 우려의 유일한 주요 문제는 오버플로입니다 (예 : 2038 년 버그).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top