时间转换问题:从格式为"yyyy-MM-dd"的日期转换成距离1970年1月1日的毫秒数,可再从得到的毫秒数怎么也转换不回去原来的日期
我的代码如下,请大家帮忙看看:
package gui.portlet.iqa;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import util.IQAUtil;
public class test {
public static int getSecondsFromDate(String expireDate){
if(expireDate == null || expireDate.trim().equals( " "))
return 0;
Calendar c = Calendar.getInstance();
int expireYear = Integer.parseInt(expireDate.substring(0,4));
int expireMonth = Integer.parseInt(expireDate.substring(5,7));
int expireDay = Integer.parseInt(expireDate.substring(8));
c.set(expireYear, expireMonth, expireDay);
long time1 = c.getTime().getTime();
// c.set(1970,1, 1);
// long time2 = c.getTime().getTime();
return (int)((time1) / 1000);
}
public static String getDateFromSeconds(String seconds){
if(seconds == null || seconds.trim().equals( " ") || seconds.equals( "0 "))
return " ";
else{
Date date = new Date();
date.setTime(Long.parseLong(seconds) * 1000);
SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd ");
return sdf.format(date);
}
}
public static void main(String[] arg0){
int i = IQAUtil.getSecondsFromDate( "2007-01-31 ");
System.out.println(i);
String str = IQAUtil.getDateFromSeconds(String.valueOf(i));
System.out.println(str);
}