码迷,mamicode.com
首页 > Web开发 > 详细

[转].NET 中日期和时间的格式化处理

时间:2015-03-13 14:02:41      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:

http://www.0431cn.com/ygtd_wz_nr_2077.html

一、日期和时间的格式化处理:

1.绑定时格式化日期方法:  <asp:BoundColumn datafield="time" dataformatstring="{0:yyyy-MM-dd}">

 </asp:BoundColumn>

2.数据控件如DataGrid/DataList等的件格式化日期方法:  e.Item.Cell[0].Text = Convert.ToDateTime(e.Item.Cell[0].Text).ToShortDateString();

3.用String类转换日期显示格式:  String.Format("yyyy-MM-dd",yourDateTime);   

4.用Convert方法转换日期显示格式:  Convert.ToDateTime("2005-8-23").ToString ("yyMMdd",System.Globalization.DateTimeFormatInfo.InvariantInfo); //支持繁体数据库

5.直接用ToString方法转换日期显示格式: DateTime.Now.ToString("yyyyMMddhhmmss"); DateTime.Now.ToString("yyyy/MM/dd hh:mm:ss")   6.只显示年月  DataBinder.eval_r(Container.DataItem,"starttime","{0:yyyy-M}")   7.显示时间所有部分,包括:年月日时分秒 <asp:BoundColumn DataField="收款时间" HeaderText="收款时间"          DataFormatString="{0:yyyy-MM-dd HH24:mm:ss}"> < /asp:BoundColumn>

二、遇到的问题:

(1)Asp.net2.0中,GridView日期列使用DataFormatString="{0:yyyy-MM-dd}",输出没有任何变化,还是默认的“2008-6-19”这样的形式。

    解决办法:同时设置属性:HtmlEncode="False"

(2)设置格式为DateTime.Now.ToString("yyyy/MM/dd") ,输出的结果是依然是2008-6-19这样的形式。

    原因:在某些语言(如 C#)中,“\”字符在与 ToString 方法共用时,它前面必须有转义符。     解决办法:

    ①启用 DateTime.ToString() 的第二个参数,忽略系统时间格式设置:

        DateTime.Now.ToString("yyyy/MM/dd",             System.Globalization.DateTimeFormatInfo.InvariantInfo);     ②使用"yyyy‘/‘MM‘/‘dd",防止 /M and /d 字符转义;     ③使用DateTime.Now.ToString(@"yyyy\/MM\/dd");,同样是为了取消转义字符。

 

三.显示的日期类型为:yyyy-MM-dd(2011-09-12)

System.DateTime.Now.ToString( "yyyy-MM-dd ");

DateTime   dt   =   DateTime.Now; string   str   =   " "; str   =   DateTime.Parse(dt.ToString()).ToString( "yyyy-MM-dd "); label1.Text   =   str;

 

 

四.现在格式是比如:2006-09-01 但我要实现的是读出来是:2006-9-1,去掉“0”,系统怎么设置?

System.DateTime.Now.ToString( "yyyy-M-d ");

 

五.DataFormatString   =   "{0:d} " 显示结果:2004-3-29 DataFormatString   =   "{0:D} " 显示结果:2004年3月29日

六.我想读取当天的日期,比如这样显示:2010年5月24日 我用的是这个方法DateTime.Today().ToLongDateString() 在我本地电脑上显示是2010年5月24日 可是程序放到服务器(server2003)上后,首页显示的日期格式:星期二,24,五月,2011 这是为什么?

DateTime.Today().ToString("yyyy年MM月dd日");

 

七. 当前:站长学院 > 网站开发 > .Net > GridView列数字、货币和日期的显示格式 GridView列数字、货币和日期的显示格式 2009-8-3 8:53:00 形式 语法 结果 注释 数字 {0:N2} 12.36   数字 {0:N0} 13   货币 {0:c2} $12.36   货币 {0:c4} $12.3656   货币 "¥{0:N2}" ¥12.36   科学计数法 {0:E3} 1.23E+001   百分数 {0:P} 12.25% P and p present the same. 日期 {0:D} 2006年11月25日   日期 {0:d} 2006-11-25   日期 {0:f} 2006年11月25日 10:30   日期 {0:F} 2006年11月25日 10:30:00   日期 {0:s} 2006-11-26 10:30:00   时间 {0:T} 10:30:00    

[转].NET 中日期和时间的格式化处理

标签:

原文地址:http://www.cnblogs.com/xiaowei-blog/p/4334730.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!