이벤트 날짜가 반환되어야하는 프로그램을 작업 중입니다.
내가 찾고 있어요 Date
아닌, DateTime
.
날짜 만 반환하는 데이터 유형이 있습니까?
답변
아니에요. DateTime
날짜와 시간으로 구성된 특정 시점을 나타냅니다. 그러나 Date
속성을 통해 날짜 부분을 검색 할 수 있습니다 ( DateTime
시간이로 설정된 또 다른 부분 00:00:00
).
답변
시간 부분, 시간대, 로컬 대 utc 등에 대해 걱정하지 않고 간단한 날짜가 필요할 때 간단한 Date 구조체 를 만들었습니다 .
Date today = Date.Today;
Date yesterday = Date.Today.AddDays(-1);
Date independenceDay = Date.Parse("2013-07-04");
independenceDay.ToLongString(); // "Thursday, July 4, 2013"
independenceDay.ToShortString(); // "7/4/2013"
independenceDay.ToString(); // "7/4/2013"
independenceDay.ToString("s"); // "2013-07-04"
int july = independenceDay.Month; // 7
답변
불행히도 .Net BCL에는 없습니다. 날짜는 일반적으로 시간이 자정으로 설정된 DateTime 객체로 표시됩니다.
짐작할 수 있듯이 이는 Date 객체의 경우 시간대 처리가 전혀 필요하지 않더라도 주변에 모든 시간대 문제가 있음을 의미합니다.
답변
래퍼 클래스를 만듭니다. 이 같은:
public class Date:IEquatable<Date>,IEquatable<DateTime>
{
public Date(DateTime date)
{
value = date.Date;
}
public bool Equals(Date other)
{
return other != null && value.Equals(other.value);
}
public bool Equals(DateTime other)
{
return value.Equals(other);
}
public override string ToString()
{
return value.ToString();
}
public static implicit operator DateTime(Date date)
{
return date.value;
}
public static explicit operator Date(DateTime dateTime)
{
return new Date(dateTime);
}
private DateTime value;
}
그리고 value
당신이 원하는 것을 노출하십시오 .
답변
Date 유형은 VB.NET에서 사용하는 DateTime 유형의 별칭 일뿐입니다 (예 : int가 Integer가 됨). 두 유형 모두 시간 부분이 00:00:00으로 설정된 객체를 반환하는 Date 속성이 있습니다.
답변
DateTime에는 날짜 부분을 분리하는 데 사용할 수 있는 Date 속성이 있습니다. 의 toString 방법은 시간 부분이 비어있는 경우에만 날짜 부분을 표시하는 좋은 일을한다.
답변
DateTime 개체에는 값의 날짜 부분 만 반환하는 속성이 있습니다.
public static void Main()
{
System.DateTime _Now = DateAndTime.Now;
Console.WriteLine("The Date and Time is " + _Now);
//will return the date and time
Console.WriteLine("The Date Only is " + _Now.Date);
//will return only the date
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}