2
SimpleDateFormat formatter = new SimpleDateFormat("h:mm a");

edto.setDate(formatter.parse(startHrs.getText() + ":" + startMin.getText());

こんにちは、私は自分の時間を12:08 PMタイプとしてsqliteに追加するようなものにフォーマットしようとしていますDATETIME。私のDTOクラスでは、対応する時間フィールドはDateタイプです。

そのような文字列は解析できないという上記のエラーが発生します。どうしてこれなの。

は、それぞれ時間(12)と分(08)の値をとる2つのJTextFieldsコンポーネントであることに注意startHrsしてください。startMin

どうすれば日付を正常に解析できますか?

エラー:

java.text.ParseException: Unparseable date: "12:12"
    at java.text.DateFormat.parse(DateFormat.java:337)
4

4 に答える 4

2

AMまたはPMを追加する必要があります

edto.setDate(formatter.parse(startHrs + ":" + startMin + " AM"));

わたしにはできる

于 2013-02-14T11:26:25.940 に答える
1

あなたdateformath:mm aと一致しない12:12です。と一致し12:12 PMます。

試す -

edto.setDate(formatter.parse(startHrs.getText() + ":" + startMin.getText()+" PM");

予測する必要のない日(0〜23)の時間を表すHH代わりに使用することをお勧めします。hAm/pm marker

SimpleDateFormat formatter = new SimpleDateFormat("HH:mm");
edto.setDate(formatter.parse(startHrs.getText() + ":" + startMin.getText());
于 2013-02-14T11:29:00.517 に答える
0
SimpleDateFormat formatter = new SimpleDateFormat("h:mm a");

edto.setDate(formatter.parse(startHrs.getText() + ":" + startMin.getText());

上記のコードフォーマッター文字列はhour:minute:amまたはpmですが、入力として提供しているのは時間と分のみであるため、日付は解析できません。パーサー形式の文字列を修正するか、時間:分:AMまたは時間:分:PM形式で入力してください。

于 2013-02-14T12:17:24.573 に答える
0

PM / AMを設定するには、「a」を使用する必要があります-http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

解析してみてください:

12:12 AM
于 2013-02-14T11:24:58.660 に答える