Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace System {
- internal sealed class DateTimeUtil {
- private const long FileTimeOffset = 504911232000000000L;
- private readonly static DateTime MaxValueMinusOneDay;
- private readonly static DateTime MinValuePlusOneDay;
- static DateTimeUtil() {
- DateTime minValue = DateTime.MinValue;
- DateTimeUtil.MinValuePlusOneDay = minValue.AddDays(1);
- DateTime maxValue = DateTime.MaxValue;
- DateTimeUtil.MaxValueMinusOneDay = maxValue.AddDays(-1);
- }
- private DateTimeUtil() {
- }
- internal static DateTime ConvertToLocalTime(DateTime utcTime) {
- if(utcTime < DateTimeUtil.MinValuePlusOneDay) {
- return DateTime.MinValue;
- }
- if(utcTime > DateTimeUtil.MaxValueMinusOneDay) {
- return DateTime.MaxValue;
- }
- return utcTime.ToLocalTime();
- }
- internal static DateTime ConvertToUniversalTime(DateTime localTime) {
- if(localTime < DateTimeUtil.MinValuePlusOneDay) {
- return DateTime.MinValue;
- }
- if(localTime > DateTimeUtil.MaxValueMinusOneDay) {
- return DateTime.MaxValue;
- }
- return localTime.ToUniversalTime();
- }
- internal static DateTime FromFileTimeToUtc(long filetime) {
- long num = filetime + 504911232000000000L;
- return new DateTime(num,DateTimeKind.Utc);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment