显然,我缺少基本的东西。我在格式化jspinner的值时遇到问题。我尝试了几种不同的方法,并不断收到错误,没有跟踪它们,除了与我试图从jspinner获取价值有关。

这是微调器代码:

//setup date format for both spinners
SimpleDateFormat datePattern = new SimpleDateFormat("MM/dd/yyyy");
JSpinner dateFrom = new JSpinner(new SpinnerDateModel());
dateFrom.setEditor(new JSpinner.DateEditor(dateFrom, datePattern.toPattern()));
JPanel dateFromPanel = new JPanel(new GridLayout());
dateFromPanel.add(dateFrom);
dateFromPanel.setBorder(new TitledBorder("Date - From"));

这是我目前尝试获取格式的方式:
SimpleDateFormat sdfSource = new SimpleDateFormat("MM/dd/yyyy");
Date from = sdfSource.parse(dateFrom.getValue().toString());
SimpleDateFormat sdfDestination = new SimpleDateFormat("MM/dd/yyyy");
String dosFrom = sdfDestination.format(from);

当前错误:
线程“主”中的异常java.text.ParseException:无法解析的日期:“EDT 2006 Mon Oct 23 00:00:00”

最佳答案

我怀疑问题是这样的:

dateFrom.getValue().toString()

我怀疑dateFrom.getValue()只是返回了Date-当然没有任何关联的格式。与其解析它,不如将其转换为:
Date from = (Date) dateFrom.getValue();

我当然可能错了……但这是我的第一个想法。

09-25 20:18