我有一个日期对象(Fri Dec 31 00:00:00 CET 1999),我只想显示31-12-1999。
我不想使用String Object来显示我需要使用Date对象显示的信息。
你有解决这个问题的方法吗?
答案 0 :(得分:4)
SimpleDateFormat dateFormatter = new SimpleDateFormat("dd-MM-yyyy");
String formattedDate = dateFormatter.format(dateInstance);
答案 1 :(得分:1)
您可以将Date作为文本直接写入ByteBuffer,您可以将其写入IO设备。例如,这可用于加速日志记录。
使用时区转换日期的逻辑是如此复杂,但我建议您使用标准库或JodaTime作为日期,因为它不值得自己写。
出于这个原因,我直接将时间写入ByteBuffer并使用SimpleDateFormat为日期生成一个缓存的String(因为它每天只更改一次)
如果要显示GUI,则必须使用String,因为GUI使用的是。
答案 2 :(得分:1)
您是否需要从Date对象中删除时间信息?你可以这样做。
Date d; // this is your date
Date dateWithoutTime = new Date(d.getYear(), d.getMonth(), d.getDay());