字符串截取方式⽇期字符串格式转换⽇期格式化转换,是开发过程中⽐较常遇到的问题。
例如以下格式的⽇期: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)
{
//
string date1 = "13.06.2017";
//yyyy/MM/dd
string 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("", "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();
}
}
测试结果:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论