datatime转化想要的格式 l4.Text = ds.Tables[0].Rows[i]["Comment_DateTime"].ToString();数据库里取出来的datatime格式转化为string了 但是显示的是:2011-11-12 0:00:00而我想要的格式是 2011-11-11 除了截取还有其他办法吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DateTime.Parse(...).ToShortDateString(); l4.Text = ds.Tables[0].Rows[i]["Comment_DateTime"]==null?"":ds.Tables[0].Rows[i]["Comment_DateTime"].ToString("yyyy-MM-dd"); 可自定义时间格式,如:DateTime MyDate = new DateTime(2011, 11, 12, 0, 0, 0);String MyString = MyDate.ToString("YYYY-MM-dd");输出:2011-11-11 备注(区分大小写):yyyy:显示指定的 DateTime 的年份部分(包括纪元)。如果年份长度小于四位,则按需要在前面追加零以使显示的年份长度达到四位。MM:显示月份,以 1 到 12 之间(包括 1 和 12)的一个数字表示。如果月份是一位数字 (1-9),则将其格式化为带有前导 0 (01-09)。(注意是大写!)dd:显示月份的当前日期,以 1 到 31 之间的一个数字表示,包括 1 和 31。如果日期只有一位数字 (1-9),则将其格式化为带有前导 0 (01-09)。(注意是小写!)h:以 1 到 12 范围中的一个数字显示指定的 DateTime 的小时数,该小时数表示自午夜(显示为 12)或中午(也显示为 12)后经过的整小时数。如果单独使用这种格式,则无法区别某一小时是中午以前还是中午以后的时间。如果该小时是单个数字 (1-9),则它显示为单个数字。显示小时时不发生任何舍入。例如,DateTime 为 5:43 时返回 5。hh:以 1 到 12 范围中的一个数字显示指定的 DateTime 的小时数,该小时数表示自午夜(显示为 12)或中午(也显示为 12)后经过的整小时数。如果单独使用这种格式,则无法区别某一小时是中午以前还是中午以后的时间。如果该小时是单个数字 (1-9),则将其格式化为前面带有 0 (01-09)。HH:以 0 到 23 范围中的一个数字显示指定的 DateTime 的小时数,该小时数表示自午夜(显示为 0)后经过的整小时数。如果该小时是单个数字 (0-9),则将其格式化为前面带有 0 (01-09)。mm:以 0 到 59 范围中的一个数字显示指定的 DateTime 的分钟数,该分钟数表示自上一小时后经过的整分钟数。如果分钟是一位数字 (0-9),则将其格式化为带有前导 0 (01-09)。ss:以 0 到 59 范围中的一个数字显示指定的 DateTime 的秒数,该秒数表示自上一分钟后经过的整秒数。如果秒是一位数字 (0-9),则将其格式化为带有前导 0 (01-09)。 楼主笔误了 呵呵 2011-11-12 00:00:00 转换成2011-11-11? 应该是2011-11-12如果是这样的话 那就用l4.Text = ds.Tables[0].Rows[i]["Comment_DateTime"].ToString("yyyy-MM-dd"); 以上说的方法为什么不可以?? 说不能将string类型转换为一个接口Iform... 改正下 这样的话 必须是datatime类型的才可以有这样的Tostring("yyyy-MM-DD")格式l4.Text = DateTime.Parse(ds.Tables[0].Rows[i]["Comment_DateTime"]).ToString("yyyy-MM-dd"); l4.Text = ds.Tables[0].Rows[i]["Comment_DateTime"].ToString("yyyy-MM-dd"); 单机版软件用什么保存数据? 大家给看看这段程序,谢谢了 linq to sql 问题! 引用类型的疑问 怎么样把以下XML的信息全都放在一个ArrayList里面亚!?重分悬赏高手解决~~~ 如何获取正在运行的系统程序名称 关于winform自定义控件问题 关于http代理设置问题 我的投诉之路 -- .net beta1给我带来的烦恼 c# udp广播获取设备IP 引起假死情况 FCKEDITOR C#字符串数组排序问题
DateTime MyDate = new DateTime(2011, 11, 12, 0, 0, 0);
String MyString = MyDate.ToString("YYYY-MM-dd");
输出:2011-11-11
备注(区分大小写):
yyyy:显示指定的 DateTime 的年份部分(包括纪元)。如果年份长度小于四位,则按需要在前面追加零以使显示的年份长度达到四位。
MM:显示月份,以 1 到 12 之间(包括 1 和 12)的一个数字表示。如果月份是一位数字 (1-9),则将其格式化为带有前导 0 (01-09)。(注意是大写!)
dd:显示月份的当前日期,以 1 到 31 之间的一个数字表示,包括 1 和 31。如果日期只有一位数字 (1-9),则将其格式化为带有前导 0 (01-09)。(注意是小写!)
h:以 1 到 12 范围中的一个数字显示指定的 DateTime 的小时数,该小时数表示自午夜(显示为 12)或中午(也显示为 12)后经过的整小时数。如果单独使用这种格式,则无法区别某一小时是中午以前还是中午以后的时间。如果该小时是单个数字 (1-9),则它显示为单个数字。显示小时时不发生任何舍入。例如,DateTime 为 5:43 时返回 5。
hh:以 1 到 12 范围中的一个数字显示指定的 DateTime 的小时数,该小时数表示自午夜(显示为 12)或中午(也显示为 12)后经过的整小时数。如果单独使用这种格式,则无法区别某一小时是中午以前还是中午以后的时间。如果该小时是单个数字 (1-9),则将其格式化为前面带有 0 (01-09)。
HH:以 0 到 23 范围中的一个数字显示指定的 DateTime 的小时数,该小时数表示自午夜(显示为 0)后经过的整小时数。如果该小时是单个数字 (0-9),则将其格式化为前面带有 0 (01-09)。
mm:以 0 到 59 范围中的一个数字显示指定的 DateTime 的分钟数,该分钟数表示自上一小时后经过的整分钟数。如果分钟是一位数字 (0-9),则将其格式化为带有前导 0 (01-09)。
ss:以 0 到 59 范围中的一个数字显示指定的 DateTime 的秒数,该秒数表示自上一分钟后经过的整秒数。如果秒是一位数字 (0-9),则将其格式化为带有前导 0 (01-09)。
如果是这样的话 那就用l4.Text = ds.Tables[0].Rows[i]["Comment_DateTime"].ToString("yyyy-MM-dd");
改正下
这样的话 必须是datatime类型的才可以有这样的Tostring("yyyy-MM-DD")格式l4.Text = DateTime.Parse(ds.Tables[0].Rows[i]["Comment_DateTime"]).ToString("yyyy-MM-dd");