如何从JCalendar的JMonthChooser获取字符串中的月份名称

时间:2015-07-12 04:21:52

标签: java swing date jcalendar

如何从JMonthChooser({1}}(toedter.com/jcalendar/)获取JCalendar字符串中的月份名称,并将其转换为字符串" 01"," 02&# 34;," 03",...," 12"就像使用SimpleDateFormat一样简单。

我会尝试:

String mymonth;
SimpleDateFormat sdfm = new SimpleDateFormat("MM");
JComboBox combom = (JComboBox)jMonthChooser1.getSpinner();
mymonth = sdfm.format(((JTextField)combom.getEditor()).getText());

但没有成功

2 个答案:

答案 0 :(得分:4)

给定JMonthChooser的实例,PropertyChangeListener会在Integer范围内看到类型为0 .. 11的新值。不要试图将此强制转换为适合SimpleDateFormat的日期,而应考虑使用合适的Formatter

JMonthChooser jmc = new JMonthChooser();
jmc.addPropertyChangeListener("month", new PropertyChangeListener() {
    @Override
    public void propertyChange(PropertyChangeEvent e) {
        System.out.println(e.getPropertyName() + ": "
            + String.format("%02d", ((Integer) e.getNewValue()).intValue() + 1));
    }
});

答案 1 :(得分:1)

我得到了我需要的另一种方式: 以下是代码:

JCalendar jCalendar1 = new JCalendar();
String mymonth;
SimpleDateFormat sdf1 = new SimpleDateFormat("MM");
Date date1 = jCalendar1.getDate();
mymonth = sdf1.format(date1);
相关问题