在Java Swing中从JSpinner获取毫秒数

问题描述 投票:0回答:1

我试图在实际时间和JSpinner控件(spnTimer)定义的时间之间提取毫秒。 JSpinner格式是:hh:mm:ss因为,我是Java的新手,我无法获得理想的结果。当我试图在字符串中转换微调时间时,我将在1970年回来。任何帮助都将受到高度赞赏。

String s = spnTimer.getValue().toString();
System.out.println("spinner time: "+ s);

结果:旋转器时间:1970年1月1日09:43:19 CET 1970

java date milliseconds jspinner
1个回答
0
投票

微调器返回“epoch”值。该纪元传统上对应于特定日期的0小时,0分钟和0秒(00:00:00)协调世界时(UTC),其随系统而变化,并且纪元值测量从那时起的秒数。尝试下面的代码,我敢打赌它会起作用

Date spinnerValue = (Date) spinner.getValue();
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MMM/dd");
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy/MMM/dd HH:mm:ss");
Date actualDate = sdf2.parse(sdf1.format(new Date()) + " " + sdf.format(spinnerValue), new ParsePosition(0));

希望这可以帮助

© www.soinside.com 2019 - 2024. All rights reserved.