在C#中如果将一个字符串类型的日期转换成日期类型很方便的
即使用Convert.ToDateTime("2015/01/01").ToString()或DateTime.TryParse 可完成转换,前提是字符串里的格式必须是系统可以识别的日期格式
如:
yyyy-MM-dd
yyyy/MM/dd
等等....
如果字符串中的格式是自定义的话(yyyyMMdd),那么系统的方法就无法直接完成转换(虽然字符串的内容是日期,如20111021)
还好C#提供了强大的可自定义格式转换功能,可以完成自定义需求,不废话直接上代码
在线Demo
![](https://i-blog.csdnimg.cn/blog_migrate/d05532ea582f48a3024bd1022a9ae0aa.png)
/******************************************************************
* 创建人:HTL
* 创建时间:2015-04-08 15:36:35
* 说明:C# 使用DateTime.TryParseExact将字符串的自定义日期格式转换成日期类型
* DEMO Url:http://ideone.com/I6MuaZ
* Email:huangyuan413026@163.com
*******************************************************************/
using System; public class DateTime_TryParseExact_Demo { public static void Main() { string str = DateTime.Now.ToString("yyyyMMdd"); string[] format = {"yyyyMMdd"}; DateTime date; if (DateTime.TryParseExact(str, format, System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out date)) { Console.WriteLine("Custom DateTime Type Convert success:"+date.ToString()); } else Console.WriteLine("Custom DateTime Type Convert error "); }//end Main }//end