java - 从 JSpinner 获取毫秒数
问题描述
我试图在实际时间和JSpinner
控件定义的时间之间提取毫秒(spnTimer
)。微调器格式为:hh:mm:ss。由于我对 Java 很陌生,因此无法获得所需的结果。当我尝试将微调器时间转换为字符串时,我的时间回到了 1970 年。
任何帮助将不胜感激。
String s = spnTimer.getValue().toString();
System.out.println("spinner time: "+ s);
结果:
spinner time: Thu Jan 01 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));
希望这可以帮助
推荐阅读
- ggplot2 - 使用不寻常的参数更改 ggplot 中 X/Y 标签的大小
- c# - 如何将带有参数数组的字符串 xml 转换为 .NET Core 中的对象
- python - 从数据框列中随机选择行
- c# - DATETIME的问题,计算两个日期之间的时间c#
- c++ - 插入多个元素时,向量大小仅增加一
- http - Informatica-MarkLogic 重试机制
- c++ - C++:将资源添加到项目模板
- android - 嵌套的 RecyclerView 滚动无法向下滚动 ViewPager2 的 BottomSheetBehavior
- c# - 如何检查动画是否已结束播放?
- c++ - PIMAGE_NT_HEADERS 结构的编译器错误 C2489