日期选择组件取得String类型的日期,怎么转成date?

2025-04-28 07:28:09
推荐回答(1个)
回答1:

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;
}
}
}