用java读取mysql中的timestamp数据发现多了一个".0"在后面,怎么回事?
环境如下:winxp+jdk1.4.2+mysql5.0.13+mysql-connector-java-5.0.12:
在Mysql中查询时间能够正确显示,如:'2008-04-26 13:33:26',但是用java通过ResultSet.getString()读取出来之后就成了'2008-04-26 13:33:26.0'了,多了一个尾巴在后面,我看到网上也有一些网站时间是这样显示的,这是怎么回事?请兄弟们赐教,如何消除这个尾巴。。。
.0表示毫秒在0-999之间取值,可以用格式化方式来解决:
import java.text.MessageFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
formatStr =yyyy-MM-dd HH:mm:ss"携启;//输出格式
SimpleDateFormat formatter = new SimpleDateFormat(formatStr);
try {
Date d = formatter.parse(“喊亏2008-04-26 13:33:26.0”);
} catch (ParseException e) {
logger.error("format Date error:" + dt + "辩渗如.error msg:"
+ e.getMessage());
e.printStackTrace();
}
}
return d;