本文主要是介绍dateTime 与string 转换(round-trip),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
- DateTime标准的字符串格式:https://docs.microsoft.com/zh-cn/dotnet/standard/base-types/standard-date-and-time-format-strings?view=netframework-4.8
- DateTime 自定义字符串格式 :https://docs.microsoft.com/zh-cn/dotnet/standard/base-types/custom-date-and-time-format-strings?view=netframework-4.8
- dateTime标准格式字符串是可以直接调用DateTime.Parse() 直接转为 date Time对象的。自定义格式的字符串可能会出现转失败的情况。 代码示例:
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace dateTime2Str
{class Program{static void Main(string[] args){//使用Round - trip DateTime values.DateTime dt = DateTime.Now;string dtStr = dt.ToString("o");DateTime RoundTripDt = DateTime.Parse(dtStr);Console.WriteLine($"original: {dtStr}---round-trip: {RoundTripDt.ToString("o")}");//使用标准的其他格式DateTime dt2 = DateTime.SpecifyKind(new DateTime(2018,12,23,6,30,25), DateTimeKind.Local);string dt2Str = dt2.ToString(" yyyy-MM-dd hh:mm:ss");DateTime roundTripDt2 = DateTime.Parse(dt2Str, null, DateTimeStyles.RoundtripKind);Console.WriteLine($"original: {dt2Str}---round-trip: {roundTripDt2.ToString("yyyy-MM-dd hh:mm:ss")}");自定义日期格式 Console.WriteLine("日期与string格式转换");string dateTimeStr = DateTime.Now.ToString("yyyyMMddHHmmss");DateTime dateTime = DateTime.ParseExact(dateTimeStr, "yyyyMMddHHmmss", null);Console.WriteLine($"original: {dateTimeStr}---round-trip: {dateTime.ToString("yyyyMMddHHmmss")}");/// 使用IFormatProviderDateTimeFormatInfo dtFormat = new DateTimeFormatInfo();dtFormat.ShortDatePattern = "yyyy/MM/dd HH:mm:ss";//--这里日期格式必须为标准格式DateTime dt3 = Convert.ToDateTime("2011/05/26 11:50:34", dtFormat);Console.ReadKey();}}
}
输出
original: 2019-05-25T12:08:45.7855241+08:00—round-trip: 2019-05-25T12:08:45.7855241+08:00
original: 2018-12-23 06:30:25—round-trip: 2018-12-23 06:30:25
日期与string格式转换
original: 20190525120845—round-trip: 20190525120845
这篇关于dateTime 与string 转换(round-trip)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!