java SimpleDataFormat时间解析
我需要解析一个字符串值并将其作为日期对象。我正在使用以下代码段
java.util.Date temp = new SimpleDateFormat("HH:mm:ss").parse("14:58:00");
我的输出是:Thu Jan 01 14:58:00 IST 1970
但是我只需要14:58:00
作为日期对象,有什么方法可以实现这一点吗?如果不是,那另一种方法是什么?请帮忙
编辑 我需要这样,因为
我有一个Jspinner(在Jpanel中)用于选择HH:mm:ss格式的时间。场景是我将打开JPanel来选择时间,然后单击save按钮,这样所选的值将保存在一个变量(x)中。现在,如果我再次打开Jpanel,应该会显示以前选择的值,这些值将从变量(x)中读取
为此,我使用以下代码
SpinnerModel Startmodel = new SpinnerDateModel();
StarttimeSpinner = new JSpinner(Startmodel);
Date date = new SimpleDateFormat("HH:mm:ss").parse("14:58:00");
StarttimeSpinner.setValue(date);
在第二行,我面临着这个问题。我只需要时间(14:58:00)作为日期对象
注意: 我已经尝试了下面的代码(它将工作,但不允许我们再次更改值)
StarttimeSpinner = new JSpinner();
Date time = new SimpleDateFormat("HHmmss", Locale.ENGLISH).parse("000000");
SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
String dateString = formatter.format(time);
StarttimeSpinner.setModel(new SpinnerListModel(new String[]{dateString}));
# 1 楼答案
您想使用
new SimpleDateFormat("HH:mm:ss").formatDate(date)
(您可以使用相同的格式化程序实例)进行输出