#region DateFormat 열거형 ////// 설 명 : DataFormat 열거형 (TT_DATE : yyyyMMddHHmm, TT_DAY : yyyyMMdd, TT_TIME : HHmmss) /// public enum DateFormat { TT_DATE, // yyyyMMddHHmm TT_DAY, // yyyyMMdd TT_TIME // HHmmss } #endregion #region 날짜 형식 관련 변환 Method ////// 설 명 : string 날짜(yyyyMMdd) -> DateTime 으로 변환 /// /// 변환할 string 날짜(yyyyMMdd)</param> ///DateTime 날짜 public static DateTime GetDTDay(string a_sDay) { DateTime dtDate = DateTime.ParseExact(a_sDay, "yyyyMMdd", System.Globalization.DateTimeFormatInfo.InvariantInfo, System.Globalization.DateTimeStyles.None); return dtDate; } ////// 설 명 : string 날짜(yyyyMMdd) -> string 날짜(yy/MM/dd)으로 변환 /// /// 변환할 string 날짜(yyyyMMdd)</param> ///string 날짜(yy/MM/dd) public static string GetDTDay2(string a_sDay) { DateTime dtDate = DateTime.ParseExact(a_sDay, "yyyyMMdd", System.Globalization.DateTimeFormatInfo.InvariantInfo, System.Globalization.DateTimeStyles.None); return dtDate.ToString("yy/MM/dd").Replace("-", "/"); } ////// 설 명 : string 날짜(yyyyMMdd) -> string 날짜(yyyy/MM/dd)으로 변환 /// /// 변환할 string 날짜(yyyyMMdd)</param> ///string 날짜(yyyy/MM/dd) public static string GetDTDay3(string a_sDay) { DateTime dtDate = DateTime.ParseExact(a_sDay, "yyyyMMdd", System.Globalization.DateTimeFormatInfo.InvariantInfo, System.Globalization.DateTimeStyles.None); return dtDate.ToString("yyyy/MM/dd").Replace("-", "/"); } ////// 설 명 : string 날짜(yyyyMMddHHmm) -> DateTime 으로 변환 /// /// 변환할 string 날짜(yyyyMMddHHmm)</param> ///DateTime 날짜 public static DateTime GetDTDate(string a_sDate) { DateTime dtDate = DateTime.ParseExact(a_sDate, "yyyyMMddHHmm", System.Globalization.DateTimeFormatInfo.InvariantInfo, System.Globalization.DateTimeStyles.None); return dtDate; } ////// 설 명 : DateTime -> string 날짜(yyyyMMdd)으로 변환 /// /// 변환할 날짜 DateTime</param> ///string 날짜(yyyyMMdd) public static string GetStrDay(DateTime a_odtDateTime) { return GetStrDate(a_odtDateTime, DateFormat.TT_DAY); } ////// 설 명 : DateTime -> string 시간(HHmm)으로 변환 /// /// 변환할 날짜 DateTime</param> ///string 시간(HHmm) public static string GetStrTime(DateTime a_odtDateTime) { return GetStrDate(a_odtDateTime, DateFormat.TT_TIME); } ////// 설 명 : DateTime -> string 날짜(yyyyMMddHHmm)으로 변환 /// /// 변환할 날짜 DateTime</param> ///string 날짜(yyyyMMddHHmmss) public static string GetStrDate(DateTime a_odtDateTime) { return GetStrDate(a_odtDateTime, DateFormat.TT_DATE); } ////// 설 명 : DateTime -> string 년도(yyyy)으로 변환 /// /// 변환할 날짜 DateTime</param> ///string 년도(yyyy) public static string GetStrYear(DateTime a_odtDateTime) { return a_odtDateTime.Year.ToString().PadLeft(4, '0'); } ////// 설 명 : DateTime -> string 월(MM)으로 변환 /// /// 변환할 날짜 DateTime</param> ///string 월(MM) public static string GetStrMonth(DateTime a_odtDateTime) { return a_odtDateTime.Month.ToString().PadLeft(2, '0'); } ////// 설 명 : DateTime -> string 일(dd)으로 변환 /// /// 변환할 날짜 DateTime</param> ///string 일(dd) public static string GetStrDay2(DateTime a_odtDateTime) { return a_odtDateTime.Day.ToString().PadLeft(2, '0'); } ////// 설 명 : DateTime -> 한글 요일로 변환 /// /// 변환할 날짜 DateTime</param> ///string 한글 요일 public static string GetStrDayOfWeek(DateTime a_odtDateTime) { switch (a_odtDateTime.DayOfWeek) { case DayOfWeek.Monday: return "월"; case DayOfWeek.Tuesday: return "화"; case DayOfWeek.Wednesday: return "수"; case DayOfWeek.Thursday: return "목"; case DayOfWeek.Friday: return "금"; case DayOfWeek.Saturday: return "토"; case DayOfWeek.Sunday: return "일"; } return ""; } ////// 설 명 : DateTime -> 오전/오후로 변환 /// /// 변환할 날짜 DateTime</param> /// K: 오전/오후, E:AM/PM</param> ///string 오전/오후 public static string GetStrAmPm(DateTime a_odtDateTime, string strLang) { try { if (a_odtDateTime.Hour > 12) { if (strLang.Equals("K")) return "(오후) "; else return "(PM) "; } else { if (strLang.Equals("K")) return "(오전) "; else return "(AM) "; } } catch (Exception ex) { throw ex; } } ////// 설 명 : DateTime -> string 날짜(DateFormat)로 변환 /// /// 변환할 날짜 DateTime</param> /// DateFormat 열거형</param> ///string 날짜(DateFormat) public static string GetStrDate(DateTime a_odtDateTime, DateFormat a_tDateFormat) { string sEditDate = null; DateTime dtDateTime; if (a_odtDateTime.Equals(DateTime.MinValue)) { dtDateTime = DateTime.Now; } else { dtDateTime = a_odtDateTime; } string sDay = dtDateTime.ToString("yyyyMMdd"); string sTime = dtDateTime.ToString("HHmm"); switch (a_tDateFormat) { case DateFormat.TT_DATE: sEditDate = sDay + sTime; break; case DateFormat.TT_DAY: sEditDate = sDay; break; case DateFormat.TT_TIME: sEditDate = sTime; break; } return sEditDate; } ////// 설 명 : DateTime -> string 날짜 포맷에 맞는 string 날짜로 변환 /// /// 변환할 날짜 DateTime</param> /// 변환할 string 날짜 포맷</param> ///string 날짜 public static string GetStrFormatDate(DateTime a_odtDateTime, string a_tDateFormat) { DateTime dtDateTime; try { if (a_odtDateTime.Equals(DateTime.MinValue)) { dtDateTime = DateTime.Now; } else { dtDateTime = a_odtDateTime; } return a_odtDateTime.ToString(a_tDateFormat).Replace("-", "/"); } catch (Exception ex) { throw ex; } } ////// 설 명 : 여러가지 string 날짜를 string 날짜에 맞는 날짜 포맷으로 -> DateTime으로 변환 /// /// 변환할 string 날짜</param> /// 변환할 string 날짜에 맞는 날짜 포맷</param> ///DateTime 날짜 public static DateTime GetDateTimeFormatString(string a_sDate, string a_sFormat) { try { DateTime dtDate = DateTime.ParseExact(a_sDate, a_sFormat, System.Globalization.DateTimeFormatInfo.InvariantInfo, System.Globalization.DateTimeStyles.None); return dtDate; } catch (Exception ex) { throw ex; } } ////// 설 명 : string 날짜(yyyyMMdd) -> string 날짜(yyyy-MM-dd)로 변환 /// /// 변환할 string 날짜(yyyyMMdd)</param> ///string 날짜(yyyy-MM-dd) public static string GetDateTimeFormat(string strDate) { string strReturn = string.Empty; try { // 변환하려는 날짜가 8자리 이상이어야 함. if (strDate.Length > 7) { strDate = strDate.Replace("-", ""); strReturn = strDate.Substring(0, 4) + "-" + strDate.Substring(4, 2) + "-" + strDate.Substring(6, 2); } return strReturn; } catch (Exception ex) { throw ex; } } ////// string 날짜(yyyyMMdd) -> string 날짜(yyyy년 MM월 dd일 수요일)로 변환 /// /// 변환할 string 날짜(yyyyMMdd)</param> ///string 날짜(yyyy년 MM월 dd일 수요일) public static string GetQTDate(string strDate) { switch (strDate.Length) { case 8: return GetDTDay(strDate).ToString("yyyy년 MM월 dd일 ") + GetStrDayOfWeek(GetDTDay(strDate)) + "요일"; case 12: return GetDTDate(strDate).ToString("yyyy년 MM월 dd일 ") + GetStrDayOfWeek(GetDTDate(strDate)) + "요일"; default: return string.Empty; } } ////// string 날짜(yyyyMMdd) -> string 날짜(yyyy년 MM월 dd일)로 변환 /// /// string 날짜(yyyyMMdd)</param> ///string 날짜(yyyy년 MM월 dd일) public static string GetNoticeDate(string strDate) { return GetDTDay(strDate).ToString("yyyy년 MM월 dd일"); } #endregion
[출처] C# 날짜관련 함수 ....|작성자 초고수닷
'관심꺼리.log > 정신노동.dat' 카테고리의 다른 글
플래쉬 태그목록 Cumulus for Tistory 버그수정 (4) | 2009.09.12 |
---|---|
블로그 도메인 주소 변경시 자동 이동처리 팁 (1) | 2009.05.06 |
MSDN검색 쉽게 하기 - IE의 비주얼 검색 기능 이용 (0) | 2009.05.06 |
SyntaxHighlighter 테스트 (0) | 2009.04.29 |
[파워빌더 Tip] 상속받은 오브젝트의 부모 오브젝트명 알아내기 (0) | 2008.10.02 |
파워빌더 기본 함수 (0) | 2008.09.30 |