http://www.aygfsteel.com/ebecket 返還網
          隨筆-140  評論-11  文章-131  trackbacks-0

          C# Use DateTime.ParseExact() instead of DateTime.Parse()

          I didn’t notice this until today, the DateTime I retrieve from my database has the format of yyyy/MM/dd hh:mm:ss.fff

          and if I use DateTime.Parse(), the .fff value will be lost.

          After searching google, I find out that not only DateTime.Parse() has this one problem, it also has problem with culture setting.

          So, whenever you what to parse a DateTime, use DateTime.ParseExact().

          Here is an useful example :

          string[] DateTimeList = {
          "yyyy/M/d tt hh:mm:ss",
          "yyyy/MM/dd tt hh:mm:ss",
          "yyyy/MM/dd HH:mm:ss",
          "yyyy/M/d HH:mm:ss",
          "yyyy/M/d",
          "yyyy/MM/dd"
          }; 
          DateTime dt = DateTime.ParseExact(" 2008/  3/18   PM 02: 50:23  ",
          DateTimeList,CultureInfo.InvariantCulture,
          DateTimeStyles.AllowWhiteSpaces
          );

          Remember, CultureInfo is important to parsing, for example tt in Chinese will be 上午/下午, in en-US will be AM/PM. You can use CultureInfo.CreateSpecificCulture() to create the culture you need.
          A small pattern reference

          yyyy year ‘2009′
          MM month ‘04′
          dd day ‘17′
          HH 24 hour ‘23′
          hh 12 hour ‘11′
          mm minutes ‘59′
          ss seconds ‘30′
          tt AM/PM
          zzz GMT
          posted on 2009-11-20 17:00 becket_zheng 閱讀(1860) 評論(0)  編輯  收藏 所屬分類: C#
          主站蜘蛛池模板: 伊金霍洛旗| 奉新县| 手机| 姜堰市| 黄陵县| 弥渡县| 和平区| 商河县| 手游| 高要市| 阿克苏市| 叙永县| 青神县| 叶城县| 昌黎县| 门源| 肃南| 平武县| 桐柏县| 普格县| 潜山县| 嘉荫县| 山阴县| 冀州市| 哈巴河县| 龙山县| 嘉鱼县| 临清市| 合肥市| 泾源县| 延寿县| 南充市| 固阳县| 光泽县| 边坝县| 新竹县| 太谷县| 东台市| 峡江县| 鄂州市| 德格县|