我已经即兴创建了一个在sqlite中插入/更新日期变量(以TimeinMillis格式)并稍后查询的函数。程序顺序如下;
1)预先插入sqlite,完成以下操作
Calendar calendar = Calendar.getInstance();
long longdate = calendar.getTimeInMillis();
int intdate = (int) longdate;
并且intdate的int值在没有问题的情况下插入到sqlite中。我检查了数据库并且值已正确插入,即1406563809550
2)从数据库中提取值
....
time = xxx.getInt(1);
....
long longtime = (long) time;
String fromdat = getDq(longtime, forma);
public static String getDq(long millis, String forma){
SimpleDateFormat fo = new SimpleDateFormat(forma);
Calendar enda = Calendar.getInstance();
enda.setTimeInMillis(millis);
return fo.format(enda.getTime());
}
但由于某种原因,结果,字符串,fromdat
显示在1970年1月1日。
我已检查并重新检查代码,但无法找到原因。 logcat上没有错误,一切正常,但为什么fromdat
暗示数据库中的值为'0'时显然不是1406563809550?