DateTime
DateTime 은 날짜와 시간 정보를 표현하는 구조체 ( Struct )이다.
년 / 월 / 일 / 시 / 분 / 초 등의 값을 저장하고 조작할 수 있게 해준다.
시스템의 현재 시간을 가져오거나, 특정 시간 차이를 계산할 때 자주 사용한다.
문법
// 생성
DateTime dt = new DateTime(2025, 10, 8, 13, 30, 0); // 2025년 10월 8일 13시 30분
// 현재 시각
DateTime now = DateTime.Now; // 시스템 현재 날짜와 시간
DateTime today = DateTime.Today; // 오늘 날짜 (시간 00:00)
// 문자열 포맷 변환
string formatted = now.ToString("yyyy-MM-dd HH:mm:ss");
// 날짜 계산
DateTime nextWeek = now.AddDays(7); // 7일 뒤
DateTime beforeOneHour = now.AddHours(-1); // 1시간 전
// 두 날짜 차이
TimeSpan diff = nextWeek - now;
Console.WriteLine(diff.Days); // 7
예시 코드
using System;
class Program
{
static void Main()
{
DateTime start = DateTime.Now;
Console.WriteLine($"시작 시간: {start:yyyy-MM-dd HH:mm:ss}");
// 3초 대기
System.Threading.Thread.Sleep(3000);
DateTime end = DateTime.Now;
Console.WriteLine($"종료 시간: {end:yyyy-MM-dd HH:mm:ss}");
TimeSpan elapsed = end - start;
Console.WriteLine($"경과 시간: {elapsed.TotalSeconds}초");
}
}
시작 시간: 2025-10-08 13:20:10
종료 시간: 2025-10-08 13:20:13
경과 시간: 3초
주의할 점
- DateTime 은 struct ( 값형식 ) → 복사 시 별도 인스턴스로 전달된다
- DateTime.Now 는 시스템 로컬 시간대를 사용한다
└ UTC 기준이 필요하다면 DateTime.UtcNow 사용 - ToString() 포맷은 문화권에 따라 다를 수 있다
└ 명시적으로 "YYYY-MM-DD HH:MM:SS" 형태로 지정 권장 - 날짜 덧셈 / 뺄셈 시 AddDays , AddHours 등의 메서드를 사용해야 한다
- 시간 차이는 TimeSpan 구조체로 계산해야 한다
정리
DateTime 은 C# 에서 날짜와 시간을 표현 , 조작하는 구조체이다.
현재 시각 확인 , 시간 계산 , 포맷 변환 등에 자주 사용한다.
'⭐C Sharp > 09. 구조체' 카테고리의 다른 글
| 구조체 ( Struct ) (0) | 2025.09.08 |
|---|