JSpinnerを使用して時間(時間は「HH:mm」パターン)を設定しました。実際の日付をJSpinnerから取得する
私は以下のようにするJSpinnerを初期化します。
JSpinner spinner = new JSpinner();
spinner.setModel(new SpinnerDateModel());
JSpinner.DateEditor timeEditor = new JSpinner.DateEditor(spinner, "HH:mm");
spinner.setEditor(timeEditor);
spinner.setValue(new Date());
そして、私は値を変更せずに値
を得るとき - 私は正しい値Tue Mar 14 14:46:41 CET 2017
を得るが、私はそれの復帰ダウン1分を変更したとき「epoche」の日付はThu Jan 01 14:45:00 CET 1970
となります。 "Epoche"の日付は、時間(時および分)はOKですが、年月日が間違っていることを意味します。
実際の日付を常に取得するようにJSpinnerを初期化する方法spinner.getValue()
? - ないepoche
私は
Date spinnerValue = (Date) spinner.getValue();
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MMM/dd");
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy/MMM/dd HH:mm:ss");
Date actualDate = sdf2.parse(sdf1.format(new Date()) + " " + sdf.format(spinnerValue), new ParsePosition(0));
以下のように解決策を見つけた日
EDIT
...それはよさそうだしていない、私はそれがより小さく、よりスマートに書きたいと思います。
いいえ。私はJSpinner – ACz