对于你的需求,你可以这么来: String today = new Timestamp(System.currentTimeMillis()); today = today.substring(0,10); //取日期部分 while(有记录) { long c = 读取当前记录内的时间。 String s = new Timestamp(c); if (s.indexOf(today)>=0) //条件成立说明记录内日期是今天的 { //输出当前日期。 }
谢谢你,飞跃,可能是我没说清楚。 我现在是是从页面上获得了一个字符串“2003-06-22 11:59:39.328”, 截取成了“2003-06-22 ”,怎么拿到数据库里去做搜索?? 对呀,我明白你的意思。就按我写的去做,再修改一下,一点问题也没有。 String day = 你的截取结果; while(有记录) -//循环遍历所有记录。 { long c = 读取当前记录内的时间。 String s = new Timestamp(c); if (s.indexOf(day)>=0) //条件成立说明记录内日期是与day匹配的 { //输出当前日期。 }
}
明白了,你想用一条sql语句直接查询记录集合,对吧, 那应该这样: 比如查,2003-06-22的, String str = "2003-06-22 00:00:00"; String str2 = "2003-06-23 00:00:00";SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ); Date date = sdf.format( str ); Date date2 = sdf.format( str2 ); long t1 = date.getTime(); long t2 = date2.getTime();然后sql语句内写: select * from your_list where t1<=时间字段 and 时间字段<t2
TimeStamp对应的
日期吗?
String today = new Timestamp(System.currentTimeMillis());
today = today.substring(0,10); //取日期部分
while(有记录)
{
long c = 读取当前记录内的时间。
String s = new Timestamp(c);
if (s.indexOf(today)>=0) //条件成立说明记录内日期是今天的
{
//输出当前日期。
}
}
现在我从页面上获得了“2003-06-22 11:59:39.328”这个字符串,
并且截取为“2003-06-22 ”,如何把这个字符串转换为Long?
转完之后还能查2003-06-22 的所有匹配数据吗??
因为我觉得根据“2003-06-22 11:59:39.328”和“2003-06-22 ”得到的Long的数字肯定是不一样的。
这样吧
String str = "2003-06-22";
SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd" );
Date date = sdf.format( str );
long timeLong = date.getTime();
那么你可以这样来做
String str = "2003-06-22";
String str2 = "2003-06-23";SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd" );
Date date = sdf.format( str );
Date date2 = sdf.format( str2 );
long timeLong = date.getTime();
long timeLong2 = date2.getTime();然后在你的数据库里面查询
所有的
数字(由System.currentTimeMillis()得到的long)
加于这两者之间的数据
明白?
我现在是是从页面上获得了一个字符串“2003-06-22 11:59:39.328”,
截取成了“2003-06-22 ”,怎么拿到数据库里去做搜索??
对呀,我明白你的意思。就按我写的去做,再修改一下,一点问题也没有。
String day = 你的截取结果;
while(有记录) -//循环遍历所有记录。
{
long c = 读取当前记录内的时间。
String s = new Timestamp(c);
if (s.indexOf(day)>=0) //条件成立说明记录内日期是与day匹配的
{
//输出当前日期。
}
}
那应该这样:
比如查,2003-06-22的,
String str = "2003-06-22 00:00:00";
String str2 = "2003-06-23 00:00:00";SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );
Date date = sdf.format( str );
Date date2 = sdf.format( str2 );
long t1 = date.getTime();
long t2 = date2.getTime();然后sql语句内写:
select * from your_list where t1<=时间字段 and 时间字段<t2
如果:
String str = request.getParameter("time");
那么
String str2 = "2003-06-23 00:00:00";怎么得到??
在t1的基础上
加上
24 * 24 * 60 * 1000