Проблема с JDateChooser, ошибка при получении даты [закрыто]

Я использую JDateChooser, однако я не могу получить дату, которую я ввожу, и всегда получаю объект null.

dateChooser = new JDateChooser();
Date dateFromDateChooser = dateChooser.getDate();
String dateString = String.format("%1$td-%1$tm-%1$tY", dateFromDateChooser);
System.err.println("IHI date string  " + dateString);

Вот что я получаю в консоли:

IHI date string  null-null-null
-2
задан 6 May 2015 в 13:12

1 ответ

Метод dateChooser.getDate() возвраты null. Вы только что инстанцировали объекта dateChooser, но никогда не присваивали объект Даты.

Это - реализация метода getDate() в JDateChooser.java

/**
 * Returns the date. If the JDateChooser is started with a null date and no
 * date was set by the user, null is returned.
 * 
 * @return the current date
 */
public Date getDate() {
    return dateEditor.getDate();
}

Затем, статический метод String.format в Вашем коде принимает также null для второго параметра, например:

String dateString = String.format("%1$td-%1$tm-%1$tY", null);
System.err.println("IHI date string  " + dateString);

Вывод:

IHI date string  null-null-null
<час>

На основе Вашего кода , бессмысленный, но рабочий пример - это.

public static void main(String[] args) {
    JDateChooser dateChooser = new JDateChooser();
    dateChooser.setDate(new Date());
    Date dateFromDateChooser = dateChooser.getDate();
    String dateString = String.format("%1$td-%1$tm-%1$tY", dateFromDateChooser);
    System.err.println("IHI date string  " + dateString);
}

Вывод:

IHI date string  06-05-2015

Набор экземпляр Даты в Вашем GUI прежде, чем считать экземпляр Даты или набор экземпляр Даты по умолчанию.

1
ответ дан 4 October 2019 в 06:51

Другие вопросы по тегам:

Похожие вопросы: