猿问

JXDatePicker swingx语言

修改问题How to make JXDatePicker use a specified language ?



慕码人8056858
浏览 98回答 1
1回答

饮歌长啸

不幸的是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 星期一
随时随地看视频慕课网APP

相关分类

Java
我要回答