程序开发 > C# > 正文

C#日期按指定格式输出

亮术网 2020-07-26 本网原创

日期一般只输出年月日,由于日期默认精确到秒,所以只输出年月日就要指定它的输出格式。具体有哪些常用的输出格式呢?

 

1、绑定日期的输出

当要绑定一个日期型的字段时,该如何输出呢?代码如下:

<%# Eval( "日期字段"),"{0:yyyy-MM-dd}")%>

<asp:BoundColumn DataField="日期字段"  HeaderText="发布日期"  DataFormatString="{0:yyyy-MM-dd}">

输出结果:比如日期是 2020-07-08 10:15:28,则最终输出为:2020-07-08

 

2、通过 ToString() 输出

DateTime dt = DateTime.Now;
  dt.ToString("yyyy-MM-dd"); //输出:2020-07-08
  dt.ToShortDateString().ToString(); //输出:2020-07-08

dt.ToString("yyyy年MM月dd日"); //输出:2020年07月08日
  dt.ToLongDateString().ToString(); //输出:2020年07月08日

dt.ToLongTimeString().ToString(); //输出:10:15:28

dt.Date.ToString(); //输出:2020-07-08 0:00:00
  dt.Year.ToString(); //输出:2020
  dt.Month.ToString(); //输出:7
  dt.Day.ToString(); //输出:8

其它的依此类推。

 

3、常用输出格式

d:使用区域设置的短日期格式    输出:07/08/2020
  D:根据区域设置的长日期格式     输出:Friday, 08 July 2020
  f:完整日期和时间(长日期和短时间)   输出:Friday, 08 July 2020 10:15
  F:FullDateTimePattern(长日期和长时间)   输出:Friday, 08 July 2020 10:15:28

 

g:常规(短日期和短时间)    输出:07/08/2020 10:15
  G:常规(短日期和长时间)    输出:07/08/2020 10:15:28
  M、m:MonthDayPattern    输出:July 08

R、r:将日期和时间格式化为格林尼治标准时间(GMT)输出:Friday, 08 July 2020 10:15:28 GMT

s: 将日期和时间格式化为可排序的索引(基于 ISO 8601)    输出:2020-07-08T10:15:28

 

t:ShortTimePattern    输出:10:15
  T:LongTimePattern    输出:10:15:28

u:UniversalSortableDateTimePattern 用于显示通用时间的格式    输出:2020-07-08 10:15:28Z

U:使用通用时间的完整日期和时间(长日期和长时间)    输出:Friday, 08 July 2020 10:15:28

 

y、Y:YearMonthPattern    输出:2020 July
  dddd, MMMM dd yyyy    输出:Friday, July 08 2020
  ddd, MMM d "'"yy    输出:Friday, Jul 08 '20
  dddd, MMMM dd    输出:Friday, July 08

 

举例:

<%# Eval("日期字段"), "{0:d}")%> 或 DataFormatString="{0:d}"

DateTime dt = DateTime.Now;
  Response.Write(dt.ToString("ddd, MMM d \"'\"yy"));