我试图在实际时间和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
微调器返回“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));
希望这可以帮助