您的位置:首页 > 其它

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

2015-03-13 12:02 288 查看
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  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: