开发中常遇到的问题--日期格式化转换.

零下一度
零下一度 原创
2017-06-23 14:29:23 1233浏览

日期格式化转换,是开发过程中比较常遇到的问题。

例如以下格式的日期:13.06.2017、2017/06/13、2017年06月13日、2017年6月13日。

针对固定格式的日期可以用字符串截取的方式格式化成需要的格式,但是不够通用。

扩展方法将日期从原始格式转化成需要的格式:

public static class CovertDateFormatExtensionMethod
    {/// <summary>/// 日期字符串转换/// </summary>/// <param name="date">日期字符串</param>/// <param name="fromDateFormat">原始日期格式</param>/// <param name="toDateFormat">转换后日期格式</param>/// <returns></returns>public static string Convert(this string date,string fromDateFormat, string toDateFormat)
        {
            DateTime dateTime = DateTime.ParseExact(date, fromDateFormat,
                System.Globalization.DateTimeFormatInfo.CurrentInfo);return dateTime.ToString(toDateFormat);
        }
    }

测试代码如下:

class Program
    {static void Main(string[] args)
        {//dd.MM.yyyystring date1 = "13.06.2017";//yyyy/MM/ddstring date2 = "2017/06/13";//yyyy年MM月dd日string date3 = "2017年06月13日";//yyyy年M月dd日string date4 = "2017年6月13日";

            Console.WriteLine(string.Format("原始日期:{0},转换后日期:{1}", date1,
                date1.Convert("dd.MM.yyyy", "yyyy-MM-dd")));
            Console.WriteLine(string.Format("原始日期:{0},转换后日期:{1}", date2,
                date2.Convert("yyyy/MM/dd", "yyyy-MM-dd")));
            Console.WriteLine(string.Format("原始日期:{0},转换后日期:{1}", date3,
                date3.Convert("yyyy年MM月dd日", "yyyy-MM-dd")));
            Console.WriteLine(string.Format("原始日期:{0},转换后日期:{1}", date4,
                date4.Convert("yyyy年M月dd日", "yyyy-MM-dd")));

            Console.ReadKey();
        }
    }

测试结果:

以上就是开发中常遇到的问题--日期格式化转换.的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。