为了账号安全,请及时绑定邮箱和手机立即绑定

JXDatePicker swingx语言

JXDatePicker swingx语言

慕码人8056858 2023-05-17 16:57:51
修改问题How to make JXDatePicker use a specified language ?
查看完整描述

1 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

不幸的是JXDatePicker,它依赖于旧的 Java 日期和时间类,包括Date和DateFormat。不幸的是,它们的设计很糟糕,后来(5 年前)被现代 Java 日期和时间 API java.time 所取代。您可能想研究是否可以找到更现代的日期选择器组件来替换它。


如果做不到这一点,JXDatePicker.setFormats则需要DateFormat对象或String对象。合理的解决方案是在将 a 传递给日期选择器之前将其传递Locale给您:SimpleDateFormat


    DateFormat dateFormat = new SimpleDateFormat("E, yyyy-MM-dd", Locale.ENGLISH);        

对于从日期选择器获得的格式,Date您可以选择在格式化之前将其转换为现代类型:


    DateTimeFormatter dateFormatter = DateTimeFormatter

            .ofPattern("E, yyyy-MM-dd", Locale.ENGLISH);

    Date oldfashionedDate = DateDP.getDate();

    ZonedDateTime dateTime = oldfashionedDate.toInstant().atZone(ZoneId.systemDefault());

    String dateString = dateTime.format(dateFormatter);

    System.out.println(dateString);

为 指定英语语言环境可DateTimeFormatter确保格式化日期具有英语中星期几的缩写,例如:


2019-08-05 星期一


查看完整回答
反对 回复 2023-05-17
  • 1 回答
  • 0 关注
  • 97 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信