JDatePicker 日期格式化
JDatePicker date formatting
我在我的应用程序中使 JDatePicker
正常工作,但希望将日期格式化为 YYYY_MM_DD
目前日期的格式是默认的 Wed Jul 08 15:17:01 ADT 2015
从这个 guide 有一个 class 格式的日期如下。
package net.codejava.swing;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import javax.swing.JFormattedTextField.AbstractFormatter;
public class DateLabelFormatter extends AbstractFormatter {
private String datePattern = "yyyy-MM-dd";
private SimpleDateFormat dateFormatter = new SimpleDateFormat(datePattern);
@Override
public Object stringToValue(String text) throws ParseException {
return dateFormatter.parseObject(text);
}
@Override
public String valueToString(Object value) throws ParseException {
if (value != null) {
Calendar cal = (Calendar) value;
return dateFormatter.format(cal.getTime());
}
return "";
}
}
所以我将 class 添加到我的包中,并且 Swing 应用程序具有正确的构造函数
JDatePickerImpl datePicker = new JDatePickerImpl(datePanel, new DateLabelFormatter());
所以每次我调用 datePicker.getModel().getValue().toString()
格式都是原始格式。
现在我看到 DateLabelFormatter 调用 valueToString
,但该方法在我的应用程序中似乎不可用 class。
我需要延长我的申请 class 吗?
我是不是调用了错误的方法来获取信息?
它们都在默认包中 [不好?] 这会导致问题吗?
你得打电话
datePicker.getJFormattedTextField().getText()
获取datePicker显示的值
http://www.codejava.net/java-se/swing/how-to-use-jdatepicker-to-display-calendar-component
这里可能有可以提供帮助的资源
我相信你可能需要打电话给
datePicker.getJFormattedTextField().getText()
我在我的应用程序中使 JDatePicker
正常工作,但希望将日期格式化为 YYYY_MM_DD
目前日期的格式是默认的 Wed Jul 08 15:17:01 ADT 2015
从这个 guide 有一个 class 格式的日期如下。
package net.codejava.swing;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import javax.swing.JFormattedTextField.AbstractFormatter;
public class DateLabelFormatter extends AbstractFormatter {
private String datePattern = "yyyy-MM-dd";
private SimpleDateFormat dateFormatter = new SimpleDateFormat(datePattern);
@Override
public Object stringToValue(String text) throws ParseException {
return dateFormatter.parseObject(text);
}
@Override
public String valueToString(Object value) throws ParseException {
if (value != null) {
Calendar cal = (Calendar) value;
return dateFormatter.format(cal.getTime());
}
return "";
}
}
所以我将 class 添加到我的包中,并且 Swing 应用程序具有正确的构造函数
JDatePickerImpl datePicker = new JDatePickerImpl(datePanel, new DateLabelFormatter());
所以每次我调用 datePicker.getModel().getValue().toString()
格式都是原始格式。
现在我看到 DateLabelFormatter 调用 valueToString
,但该方法在我的应用程序中似乎不可用 class。
我需要延长我的申请 class 吗?
我是不是调用了错误的方法来获取信息?
它们都在默认包中 [不好?] 这会导致问题吗?
你得打电话
datePicker.getJFormattedTextField().getText()
获取datePicker显示的值
http://www.codejava.net/java-se/swing/how-to-use-jdatepicker-to-display-calendar-component
这里可能有可以提供帮助的资源
我相信你可能需要打电话给
datePicker.getJFormattedTextField().getText()