熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

使用.NET Framework中新的日期時間類型[7]

2013-11-13 10:57:43  來源: .NET編程 

  時區支持

  在NET Framework 之前我們只能使用TimeZone來表示一個時區但是Timezone功能很有限它只能識別本地時區可以在UTC和本地時間之間轉換時間而TimeZoneInfo 對TimeZone進行了很大的增強它可以表示世界上的任意時區 看下面一段代碼

static void Main(string[] args)
{
  TimeZone timeZoneA = TimeZoneCurrentTimeZone;
  ConsoleWriteLine(timeZoneAStandardName);
  TimeZoneInfo timeZoneB = TimeZoneInfoLocal;
  ConsoleWriteLine(timeZoneBStandardName);
  TimeZoneInfo timeZoneC = TimeZoneInfoUtc;
  ConsoleWriteLine(timeZoneCStandardName);

  }

  輸出結果如下圖所示


  TimeZone提供的屬性和方法非常有限TimeZoneInfo在這方面就顯的非常豐富我們可以使用TimeZoneInfo在兩個不同的時區之間轉換時間如下面的代碼

static void Main(string[] args)
{
  DateTimeOffset chinaDate = DateTimeOffsetNow;
  DateTimeOffset easternDate = TimeZoneInfoConvertTime(
    chinaDate
    TimeZoneInfoFindSystemTimeZoneById(Eastern Standard Time));
  ConsoleWriteLine(Now: {} chinaDate);
  ConsoleWriteLine(Now in Eastern: {} easternDate);
}

  輸出結果如下圖所示

  這裡使用FindSystemTimeZoneById方法來根據ID來獲取時區在推出TimeZoneInfo之後在以後的開發中完全可以放棄TimeZone類了TimeZoneInfo已經完全包含了它

  總結

  本文介紹了NET Framework中對於日期時間類型的支持希望對大家有所幫助

[]  []  []  []  []  []  []  


From:http://tw.wingwit.com/Article/program/net/201311/14871.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.