黑马程序员技术交流社区

标题: 时间类型的简单问题 [打印本页]

作者: 郑丹丹1990    时间: 2013-4-12 16:54
标题: 时间类型的简单问题
本帖最后由 郑丹丹1990 于 2013-4-24 08:57 编辑

数据中FBDate字段的类型datetime
当读取到页面时是2013-04-09 14:32:19.000
但是我想要  2013-04-09 ,该咋办???我记得视频中有讲解,但是我找了,没找到。
作者: 曾玉锋    时间: 2013-4-12 18:04
  1. string date1 = DateTime.Now.ToString();
  2.             Console.WriteLine(date1);
  3.             string date2 = Convert.ToDateTime(date1).ToShortDateString();//你想要的时间字符串
  4.             Console.WriteLine(date2);
复制代码

作者: huima    时间: 2013-4-12 18:07
SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm");
Date date=null;
String dateText=null;

<%date=dateFormat.parse((String)hm.get("time"));
dateText=dateFormat.format(date);
%>
td><%=dateText%></td>

这是我写的一段,不知道你能不能看懂
先用dateFormat把字符串格试化成Date型,再通过dateFormat的format方法格式化一下,就好了

在实例化SimpleDateFormat时("yyyy-MM-dd HH:mm")代表 年-月-日 小时-分 你可以直接写面("yyyy-MM-dd")就成了。
或者直接截取字符串好了
<%=rs.getString("StartDate").substring(0,11)%>
作者: 许庭洲    时间: 2013-4-12 18:41
1。 使用TO_CHAR(时间日期值,‘YYY-MM-DD’)可以得到日期时间值的日期部分;
2, SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD') FROM DUAL
3.   执行完毕后输出的结果:
     TO_CHAR(SYSDATE, YYYY-MM-DD)
     2013-04-12
作者: 韦俊琳    时间: 2013-4-12 18:49
可以将DateTime类型中的年月天分别提取出来,然后再拼接字符串。
  1. DateTime dt = new DateTime();
  2. //提取年份
  3. string year = dt.Year.ToString();
  4. //提取月份
  5. string month = dt.Month.ToString();
  6. //提取天
  7. string day = dt.Day.ToString();
  8. //拼接
  9. string s = year + "-" + month + "-" + day;
复制代码

作者: 宋兴征    时间: 2013-4-12 20:01
SQL语句中,日期格式的转换:
SELECT GETDATE()      结果:2013-04-12 20:00:17.717
SELECT CONVERT(VARCHAR(10),GETDATE(),20)   结果:2013-04-12
你试试就知道了
作者: 郑丹丹1990    时间: 2013-4-12 21:36
韦俊琳 发表于 2013-4-12 18:49
可以将DateTime类型中的年月天分别提取出来,然后再拼接字符串。

挺好的,就是有点费事。下楼方法不错。
作者: 韦俊琳    时间: 2013-4-12 21:42
郑丹丹1990 发表于 2013-4-12 21:36
挺好的,就是有点费事。下楼方法不错。

学习了:handshake
作者: 郑丹丹1990    时间: 2013-4-12 21:44
许庭洲 发表于 2013-4-12 18:41
1。 使用TO_CHAR(时间日期值,‘YYY-MM-DD’)可以得到日期时间值的日期部分;
2, SELECT TO_CHAR(SYSDATE, ...

:handshake
作者: 郑丹丹1990    时间: 2013-4-12 21:47
宋兴征 发表于 2013-4-12 20:01
SQL语句中,日期格式的转换:
SELECT GETDATE()      结果:2013-04-12 20:00:17.717
SELECT CONVERT(VARCH ...

ok,谢谢哈!采纳就它了
作者: 郑丹丹1990    时间: 2013-4-12 21:47
本帖最后由 郑丹丹1990 于 2013-4-12 21:56 编辑

我总结一下大家的方法吧!
一、string date1 = DateTime.Now.ToString();
            Console.WriteLine(date1);
            string date2 = Convert.ToDateTime(date1).ToShortDateString();//你想要的时间字符串
            Console.WriteLine(date2);
     这个WinForm时用。
二、
SQL语句中,日期格式的转换:
SELECT GETDATE()      结果:2013-04-12 20:00:17.717
SELECT CONVERT(VARCHAR(10),GETDATE(),20)   结果:2013-04-12
你试试就知道了
这个sql server中用到。


三、
<asp:BoundField DataField="FBDate" DataFormatString="{0:yy-MM-dd}" HeaderText="发布日期" />
这个是在<GridView>中用到的。
这个在web中用。




1。 使用TO_CHAR(时间日期值,‘YYY-MM-DD’)可以得到日期时间值的日期部分;
2, SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD') FROM DUAL
3.   执行完毕后输出的结果:
     TO_CHAR(SYSDATE, YYYY-MM-DD)
     2013-04-12
这个方法我没有实现????

作者: 宋兴征    时间: 2013-4-13 11:38
郑丹丹1990 发表于 2013-4-12 21:47
我总结一下大家的方法吧!
一、string date1 = DateTime.Now.ToString();
            Console.WriteLine(d ...

总结挺好,我也学习了!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2