SimpleDateFormat не выдает ожидаемый результат - PullRequest
0 голосов
/ 24 марта 2012

Я использовал JCalender, чтобы получить дату. Он возвратил такую ​​дату

Thu Mar 01 18:35:53 PST 2012

Но мне нужен этот формат.

01/03/2012 

Я попробовал следующий код:

SimpleDateFormat MydateFormat = new SimpleDateFormat("dd/MM/yyyy");
            FromDate.getDateEditor().addPropertyChangeListener(
new PropertyChangeListener() {
    @Override
    public void propertyChange(PropertyChangeEvent e) {
        if ("date".equals(e.getPropertyName())) {
            System.out.println(e.getPropertyName()
                + ": -->" + (Date) e.getNewValue());
                try {
                    fdate = MydateFormat.parse(e.getNewValue().toString());
                    JOptionPane.showMessageDialog(rootPane, fdate);
                } catch (ParseException ex) {
                    Logger.getLogger(DashboardChart.class.getName()).log(Level.SEVERE, null, ex);
                }

        }       
    }
});

1 Ответ

3 голосов
/ 24 марта 2012

Вы запрашивали новый Date объект, основанный на текущем.Попробуйте это:

package test;

import java.text.SimpleDateFormat;
import java.util.Date;
import javax.swing.JOptionPane;

public class TestDateFormat {

    public static void main(String[] args) {
        SimpleDateFormat MydateFormat = new SimpleDateFormat("dd/MM/yyyy");
        Date date = new Date();
        String fdate = MydateFormat.format(date);
        System.out.println(date + " \tFORMATTED: " + fdate);
        JOptionPane.showMessageDialog(null, fdate);
    }
}

EG Output

Sat Mar 24 23:40:09 EST 2012    FORMATTED: 24/03/2012
...