• C# string格式的日期时间字符串转为DateTime类型的方法


    C# string格式的日期时间字符串转为DateTime类型的方法

     更新时间:2017年02月19日 12:52:29   投稿:mdxy-dxy    我要评论

    C# string 转为 DateTime 类型的方法

    方法一:Convert.ToDateTime(string)

    string格式有要求,必须是yyyy-MM-dd hh:mm:ss

    也可以是yyyy/M/d, windows XP 好像不行

    方法二:Convert.ToDateTime(string, IFormatProvider)

    1

    2

    3

    4

    DateTime dt;

    DateTimeFormatInfo dtFormat = new System.GlobalizationDateTimeFormatInfo();

    dtFormat.ShortDatePattern = "yyyy/MM/dd";

    dt = Convert.ToDateTime("2011/05/26", dtFormat);

    方法三:DateTime.ParseExact()

    1

    2

    string dateString = "20110526";

    DateTime dt = DateTime.ParseExact(dateString, "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture);

    或者

    DateTime dt = DateTime.ParseExact(dateString, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture);

    附参考信息:

    CultureInfo cultureInfo = CultureInfo.CreateSpecificCulture("en-US");
    string format = "ddd MMM d HH:mm:ss zz00 yyyy";
    string stringValue = DateTime.Now.ToString(format, cultureInfo); // 得到日期字符串
    DateTime datetime = DateTime.ParseExact("Wed Aug 25 16:28:03 +0800 2010", format, cultureInfo); // 将字符串转换成日期

    其他

    日期格式:yyyyMMdd HH:mm:ss(注意此字符串的字母大小写很严格)
    yyyy:代表年份
    MM:  代表月份
    dd:代表天
    HH: 代表小时(24小时制)
    mm: 代表分钟
    ss:代表秒

    DateTime.Now.ToString()-->2019/7/9 13:50:06    111111
    DateTime.Now.ToShortTimeString() 

    DateTime.Now.ToShortDateString() -->2019/7/8
    DateTime dt = DateTime.Now; dt.ToString();//2005-11-5 13:21:25 
    dt.ToFileTime().ToString();//127756416859912816 
    dt.ToFileTimeUtc().ToString();//127756704859912816 
    dt.ToLocalTime().ToString();//2005-11-5 21:21:25 
    dt.ToLongDateString().ToString();   //2005年11月5日 
    dt.ToLongTimeString().ToString();//13:21:25 


    dt.ToOADate().ToString();//38661.5565508218

    dt.ToShortDateString().ToString();//2005-11-5 
    dt.ToShortTimeString().ToString();//13:21 
    dt.ToUniversalTime().ToString();//2005-11-5 5:21:25 dt.Year.ToString();//2005 
    dt.Date.ToString();//2005-11-5 0:00:00 
    dt.DayOfWeek.ToString();//Saturday 
    dt.DayOfYear.ToString();//309 
    dt.Hour.ToString();//13 
    dt.Millisecond.ToString();//441 
    dt.Minute.ToString();//30 
    dt.Month.ToString();//11 
    dt.Second.ToString();//28 
    dt.Ticks.ToString();//632667942284412864 
    dt.TimeOfDay.ToString();//13:30:28.4412864 
    dt.ToString();//2005-11-5 13:47:04 
    dt.AddYears(1).ToString();//2006-11-5 13:47:04 
    dt.AddDays(1.1).ToString();//2005-11-6 16:11:04 
    dt.AddHours(1.1).ToString();//2005-11-5 14:53:04 
    dt.AddMilliseconds(1.1).ToString();//2005-11-5 13:47:04 
    dt.AddMonths(1).ToString();//2005-12-5 13:47:04 
    dt.AddSeconds(1.1).ToString();//2005-11-5 13:47:05 
    dt.AddMinutes(1.1).ToString();//2005-11-5 13:48:10 
    dt.AddTicks(1000).ToString();//2005-11-5 13:47:04 
    dt.CompareTo(dt).ToString();//0 
    dt.Add(?).ToString();//问号为一个时间段 
    dt.Equals("2005-11-6 16:11:04").ToString();//False 
    dt.Equals(dt).ToString();//True 
    dt.GetHashCode().ToString();//1474088234 
    dt.GetType().ToString();//System.DateTime 
    dt.GetTypeCode().ToString();//DateTime

    dt.GetDateTimeFormats('s')[0].ToString();//2005-11-05T14:06:25 
    dt.GetDateTimeFormats('t')[0].ToString();//14:06 
    dt.GetDateTimeFormats('y')[0].ToString();//2005年11月 
    dt.GetDateTimeFormats('D')[0].ToString();//2005年11月5日 
    dt.GetDateTimeFormats('D')[1].ToString();//2005 11 05 
    dt.GetDateTimeFormats('D')[2].ToString();//星期六 2005 11 05 
    dt.GetDateTimeFormats('D')[3].ToString();//星期六 2005年11月5日 
    dt.GetDateTimeFormats('M')[0].ToString();//11月5日 
    dt.GetDateTimeFormats('f')[0].ToString();//2005年11月5日 14:06 
    dt.GetDateTimeFormats('g')[0].ToString();//2005-11-5 14:06 
    dt.GetDateTimeFormats('r')[0].ToString();//Sat, 05 Nov 2005 14:06:25 GMT

    string.Format("{0:d}",dt);//2005-11-5 
    string.Format("{0}",dt);//2005年11月5日 
    string.Format("{0:f}",dt);//2005年11月5日 14:23 
    string.Format("{0:F}",dt);//2005年11月5日 14:23:23 
    string.Format("{0:g}",dt);//2005-11-5 14:23 
    string.Format("{0:G}",dt);//2005-11-5 14:23:23 
    string.Format("{0:M}",dt);//11月5日 
    string.Format("{0:R}",dt);//Sat, 05 Nov 2005 14:23:23 GMT 
    string.Format("{0:s}",dt);//2005-11-05T14:23:23 
    string.Format("{0:t}",dt);//14:23 
    string.Format("{0:T}",dt);//14:23:23 
    string.Format("{0:u}",dt);//2005-11-05 14:23:23Z 
    string.Format("{0:U}",dt);//2005年11月5日 6:23:23 
    string.Format("{0:Y}",dt);//2005年11月 
    string.Format("{0}",dt);//2005-11-5 14:23:23 
    string.Format("{0:yyyyMMddHHmmssffff}",dt); 
    计算2个日期之间的天数差
    DateTime dt1 = Convert.DateTime("2007-8-1"); 
    DateTime dt2 = Convert.DateTime("2007-8-15"); 
    TimeSpan span = dt2.Subtract(dt1); 
    int dayDiff = span.Days + 1; 
    计算某年某月的天数 
    int days = DateTime.DaysInMonth(2007, 8); 
    days = 31; 
    给日期增加一天、减少一天 
    DateTime dt =DateTime.Now; 
    dt.AddDays(1); //增加一天 
    dt.AddDays(-1);//减少一天 其它年份方法类似... 
    Oracle SQL里转换日期函数
    to_date("2007-6-6",'YYYY-MM-DD"); 
    to_date("2007/6/6",'yyyy/mm/dd");

  • 相关阅读:
    HTML5结构
    HTML5新增的非主体元素header元素、footer元素、hgroup元素、adress元素
    CF GYM 100703G Game of numbers
    CF GYM 100703I Endeavor for perfection
    CF GYM 100703K Word order
    CF GYM 100703L Many questions
    CF GYM 100703M It's complicate
    HDU 5313 Bipartite Graph
    CF 560e Gerald and Giant Chess
    POJ 2479 Maximum sum
  • 原文地址:https://www.cnblogs.com/grj001/p/12225488.html
Copyright © 2020-2023  润新知