日期选择组件取得String类型的日期,怎么转成date?
jsp页面上有一个日期选择组件,选了日期传到后台查找这个日期的选择得到的值是个String类型,但是我的formbean中createdate这个属性是date型的,无法...
jsp页面上有一个日期选择组件,选了日期传到后台查找
这个日期的选择得到的值是个String类型,但是我的formbean中createdate这个属性是date型的,无法set到bean中,请问有什么方法可以在页面上把这个String转成date
代码:
开始日期:
<html:text property="createdate" size="10" maxlength="32" styleClass="textfield120" onfocus="calendar()" />
<a href="#" onclick="doQuery(document.forms[0]);"><span class="searchNew" /></a> 展开
这个日期的选择得到的值是个String类型,但是我的formbean中createdate这个属性是date型的,无法set到bean中,请问有什么方法可以在页面上把这个String转成date
代码:
开始日期:
<html:text property="createdate" size="10" maxlength="32" styleClass="textfield120" onfocus="calendar()" />
<a href="#" onclick="doQuery(document.forms[0]);"><span class="searchNew" /></a> 展开
2个回答
展开全部
public class Test
{
public static void main(String[] args)
{
System.out.println(compare("2007-03-01","2007-02-02")/(1000*60*60*24));
}
public static Long compare(String first,String second)
{
java.text.DateFormat formatter=new java.text.SimpleDateFormat("yyyy-MM-dd");//规定的日期的格式,必需为2007-01-01这样的格式
java.util.Calendar firstCal=java.util.Calendar.getInstance();
java.util.Calendar secondCal=java.util.Calendar.getInstance();
try
{
firstCal.setTime(formatter.parse(first));
firstCal.set(java.util.Calendar.HOUR_OF_DAY,0);
firstCal.set(java.util.Calendar.MINUTE,0);
firstCal.set(java.util.Calendar.SECOND,0);
firstCal.set(java.util.Calendar.MILLISECOND,0);
secondCal.setTime(formatter.parse(second));
secondCal.set(java.util.Calendar.HOUR_OF_DAY,0);
secondCal.set(java.util.Calendar.MINUTE,0);
secondCal.set(java.util.Calendar.SECOND,0);
secondCal.set(java.util.Calendar.MILLISECOND,0);
return new Long(secondCal.getTimeInMillis()-firstCal.getTimeInMillis());//返回second所代表的日期和first所代表的日期之间相差的毫秒数,如果你想转换成天数,那就把这个结果除以(1000*60*60*24),转化成小时、分、秒等依此类推
}
catch (java.text.ParseException e)
{
System.out.println("输入的参数格式不符合要求,需要是2007-01-01这样的格式");
return null;
}
}
}
{
public static void main(String[] args)
{
System.out.println(compare("2007-03-01","2007-02-02")/(1000*60*60*24));
}
public static Long compare(String first,String second)
{
java.text.DateFormat formatter=new java.text.SimpleDateFormat("yyyy-MM-dd");//规定的日期的格式,必需为2007-01-01这样的格式
java.util.Calendar firstCal=java.util.Calendar.getInstance();
java.util.Calendar secondCal=java.util.Calendar.getInstance();
try
{
firstCal.setTime(formatter.parse(first));
firstCal.set(java.util.Calendar.HOUR_OF_DAY,0);
firstCal.set(java.util.Calendar.MINUTE,0);
firstCal.set(java.util.Calendar.SECOND,0);
firstCal.set(java.util.Calendar.MILLISECOND,0);
secondCal.setTime(formatter.parse(second));
secondCal.set(java.util.Calendar.HOUR_OF_DAY,0);
secondCal.set(java.util.Calendar.MINUTE,0);
secondCal.set(java.util.Calendar.SECOND,0);
secondCal.set(java.util.Calendar.MILLISECOND,0);
return new Long(secondCal.getTimeInMillis()-firstCal.getTimeInMillis());//返回second所代表的日期和first所代表的日期之间相差的毫秒数,如果你想转换成天数,那就把这个结果除以(1000*60*60*24),转化成小时、分、秒等依此类推
}
catch (java.text.ParseException e)
{
System.out.println("输入的参数格式不符合要求,需要是2007-01-01这样的格式");
return null;
}
}
}
展开全部
String str = "2013-01-08 14:20:52";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse(str);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse(str);
追问
我是要在jsp页面上就转好再传到后台的,这样好像不行诶
你看我代码,property="createdate"已经定死了
如果换成input标签该如何做?
追答
额 那js处理一下吧,类似:
var dateStr = "08 01,2013 14:20:52";
Date myDate = new Date(dateStr);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询