我有以下方法将String转换为Date对象
public Date convertTime(String time) {
SimpleDateFormat parser = new SimpleDateFormat("d/M/y HH:mm:ss.S");
try {
return parser.parse(time);
}
catch (Exception ex) {
ex.printStackTrace();
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
我有以下方法将其转换回来
public String dateToTimeMillis(Date date) {
//StringBuffer formatted = new StringBuffer();
SimpleDateFormat parser = new SimpleDateFormat("HH:mm:ss.S");
try {
String formatted = parser.format(date);
return formatted;
}
catch (Exception ex) {
ex.printStackTrace();
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
以下测试代码
TraderLib lib = new TraderLib();
Date d1 = lib.convertTime("01/11/2011 10:41:09.045");
System.out.println(lib.dateToTimeMillis(d1));
Run Code Online (Sandbox Code Playgroud)
返回10:41:09.45
我如何保留0?
您应该将格式设置为:
new SimpleDateFormat("d/M/y HH:mm:ss.SSS");
Run Code Online (Sandbox Code Playgroud)
保留3位数.从文档:
"数字:对于格式化,模式字母的数量是最小位数,较短的数字是零填充到此数量.对于解析,忽略模式字母的数量,除非需要分隔两个相邻的字段."
| 归档时间: |
|
| 查看次数: |
137 次 |
| 最近记录: |