在sqlite 里面设置 "`timestamp` timestamp DEFAULT CURRENT_TIMESTAMP," 默认使用的是UTC时间,如果不加处理会有时差问题。
SimpleDateFormat timestampFormatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA);
//timestamp 用的是UTC时间,不设置的话转换会有时区问题
timestampFormatter.setTimeZone(TimeZone.getTimeZone("UTC"));
//.........
//............
//....
//获取的timestamp是String格式
String timeString = c.getString(3);
Date date = null;
try {
date = timestampFormatter.parse(timeString);
} catch (Exception e) {
Log.e(TAG, "wrong timestamp format:" + timeString);
}