我想从Date对象中删除时间。
Date
DateFormat df; String date; df = new SimpleDateFormat("dd/MM/yyyy"); d = eventList.get(0).getStartDate(); // I'm getting the date using this method date = df.format(d); // Converting date in "dd/MM/yyyy" format
但是,当我转换此日期(String格式)时,它也在附加时间。
String
我根本不想要时间。我想要的只是“ 21/03/2012”。
快速答案是:
不,您不能这样做。 因为那是Date用来干什么的。
来自的javadoc Date:
Date类表示特定的时间瞬间,精度为毫秒。
但是 ,由于此类仅是数据对象。它不在乎我们如何描述它。当我们看到日期时2012/01/01 12:05:10.321,可以说是2012/01/01,这就是您所需要的。有很多方法可以做到这一点。
2012/01/01 12:05:10.321
2012/01/01
示例1:通过操纵字符串
输入字符串:2012/01/20 12:05:10.321
所需的输出字符串:2012/01/20
由于yyyy / MM / dd正是我们所需要的,因此我们可以简单地操作字符串以获取结果。
String input = "2012/01/20 12:05:10.321"; String output = input.substring(0, 10); // Output : 2012/01/20
例子2:通过SimpleDateFormat
所需的输出字符串:2012年1月20日
在这种情况下,我们需要其他格式。
String input = "2012/01/20 12:05:10.321"; DateFormat inputFormatter = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss.SSS"); Date date = inputFormatter.parse(input); DateFormat outputFormatter = new SimpleDateFormat("MM/dd/yyyy"); String output = outputFormatter.format(date); // Output : 01/20/2012
有关其用法SimpleDateFormat,请检查SimpleDateFormat JavaDoc。
SimpleDateFormat