Microsoft MVP성태의 닷넷 이야기
TimeSpan 구할 때 시간대를 바꿔도 같은 값이 나오는 것 같습니다. [링크 복사], [링크+제목 복사],
조회: 14514
글쓴 사람
영귤 (lucasyi at naver.com)
홈페이지
첨부 파일
 

            DateTime now = DateTime.Now;

            DateTime endOfYear1 = new DateTime(now.Year, 12, 31, 0, 0, 0);
            DateTime endOfYear2 = new DateTime(now.Year, 12, 31, 0, 0, 0, DateTimeKind.Local);
            DateTime endOfYear3 = new DateTime(now.Year, 12, 31, 0, 0, 0, DateTimeKind.Utc);

            TimeSpan gap1 = endOfYear1 - now;
            TimeSpan gap2 = endOfYear2 - now;
            TimeSpan gap3 = endOfYear3 - now;

            Console.WriteLine("올해의 남은 날짜: " + gap1.TotalSeconds);
            Console.WriteLine("올해의 남은 날짜: " + gap2.TotalSeconds);
            Console.WriteLine("올해의 남은 날짜: " + gap3.TotalSeconds);


c# 8.0 382 페이지의 코드를 약간 바꾸어 보았습니다.

now는 local time 기준이니까,
시간대에 따라서 빼기 결과가 달라야 정상이 아닌가요?








[최초 등록일: ]
[최종 수정일: 8/6/2020]


비밀번호

댓글 작성자
 



2020-08-06 09시49분
이게 DateTime의 Subtract 연산이 TimeZone을 고려한 연산이 아니고, 순수하게 시간 대 시간으로 연산을 하기 때문입니다. 즉, Local 시간대로 0에서 5까지 흐른 시간과, UTC 시간대로 0에서 10까지 흘렀다고 했을 때, 서로 TimeZone에 맞게 변환해서 시간 차를 구하는 것이 아니고, 10에서 5를 빼는 식으로 단순하게 계산하게 되어 있습니다.

따라서, 원하는 결과를 얻으려면 시간대를 같게 맞춰서 연산을 해야 합니다.
정성태

... 91  92  93  94  [95]  96  97 
NoWriterDateCnt.TitleFile(s)
78임은선1/26/200513653        답변글 [답변]: [답변]: 질문이 있는데요....
72최정희1/19/200513096또 접니다.
73정성태1/19/200512898    답변글 [답변]: 또 접니다. [2]
74최정희1/19/200512246        답변글 [답변]: [답변]: 당연히 도움이 되지요.
75정성태1/19/200512791            답변글 [답변]: [답변]: [답변]: 당연히 도움이 되지요.
69최정희10/13/200412238저 기억하실런지? 그때 두리로IE툴바 만들어 주셨죠.
62엄길웅10/1/200413439매번 물어보기만 하는군요..
63정성태10/2/200413182    답변글 [답변]: 매번 물어보기만 하는군요..
64keal...10/5/200414834        답변글 [답변]: [답변]: 매번 물어보기만 하는군요..
65정성태10/6/200414684            답변글 [답변]: [답변]: [답변]: 매번 물어보기만 하는군요..
68keal...10/11/200412391                답변글 [답변]: [답변]: [답변]: [답변]: 매번 물어보기만 하는군요..
71정성태10/31/200412444                    답변글 [답변]: [답변]: [답변]: [답변]: [답변]: 매번 물어보기만 하는군요..
58엄길웅9/30/200412586안녕하세요.. 추석은 잘 보내셨는지요?
59정성태9/30/200412747    답변글 [답변]: 안녕하세요.. 추석은 잘 보내셨는지요?
60엄길웅10/1/200412591        답변글 [답변]: [답변]: 안녕하세요.. 추석은 잘 보내셨는지요?
56엄길웅9/23/200412921ATL을 이용해서 함수를 하나 만들었습니다.
57정성태9/23/200413955    답변글 [답변]: ATL을 이용해서 함수를 하나 만들었습니다.
61엄길웅10/1/200412611        답변글 [답변]: [답변]: ATL을 이용해서 함수를 하나 만들었습니다.
54차광석8/26/200412786잘 지내시죠?
55정성태8/27/200411888    답변글 [답변]: 잘 지내시죠?
52김명원8/3/200412717질문이요..
53정성태8/19/200412569    답변글 [답변]: 질문이요..
50김상표7/5/200412426질문요...
51정성태7/6/200412271    답변글 [답변]: 질문요...
45송야5/29/200412420웹페이지 자동로그인..
46정성태5/31/200413327    답변글 [답변]: 웹페이지 자동로그인..
... 91  92  93  94  [95]  96  97