1

getDate() 関数によって最初にキャプチャされたイベントの日付を返す Web サービスを作成しました。この関数によって返された日付 (この形式に沿ったもの: 2013-05-17 14:52:00.943) を解析して、DD-MM-YYYY 形式でユーザーに表示します。

助言がありますか?この方向に沿った解決策はまだ見つかりません。

4

3 に答える 3

3

私はこのコードを試してみましたが、うまくいきました。以下のコードを試してください: Tarun にも賛成票を投じてください。彼はほぼ正しい答えを出しました。

文字列 formatDate = p.format(pDate);

「DD-MM-YYYY」のような形式の2番目の間違いですが、実際の形式は次のとおりです。

「DD-MM-YYYY」ではなく「dd-MM-yyyy」

私はそれに変更を加えて修正しました。

String dateStr = "2013-05-16 14:52:00.943"; 

SimpleDateFormat c = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss.S"); // your web service format
Date pDate = c.parse(dateStr); 
SimpleDateFormat p = new SimpleDateFormat("dd-MM-yyyy"); // your required format

String formatDate = p.format(pDate); // convert it in your required format
SimpleDateFormat formatter = new SimpleDateFormat("EEEE"); // Day format as you want EEE for like "Sat" and EEEE for like "Saturday"
String Day = formatter.format(pDate); // This will give you a day as your selected format

System.out.println("Date & Day>>>"+formatDate+" "+Day);

// GMT 形式の場合、形式は次のようになります: "2013-05-16 14:52:00.943 GMT+05:30"

// Give it to me in GMT time.
c.setTimeZone(TimeZone.getTimeZone("GMT+05:30"));
System.out.println("GMT time: " + c.format(pDate));

出力:

Date & Day>>>16-05-2013 Thursday
GMT time: 2013-05-16 02:52:00.943 Greenwich Mean Time

城田時間:

ここから joda time の 2.0 jar ファイルをダウンロードできます。

DateTimeFormatter jodaFormatter = ISODateTimeFormat.dateTime();
DateTime jodaParsed = jodaFormatter
                .parseDateTime("2013-05-17T16:27:34.9+05:30");
Date date2 = jodaParsed.toDate();
System.out.println("Date & Day:" + jodaParsed.getDayOfMonth() + "-" + jodaParsed.getMonthOfYear() + "-" + jodaParsed.getYear() + " " + jodaParsed.getHourOfDay() + ":" + jodaParsed.getMinuteOfHour()+" "+jodaParsed.dayOfWeek().getAsText());

出力:

Date & Day:17-5-2013 16:27 Friday

それがあなたのために働くことを願っています。

于 2013-05-18T08:12:46.577 に答える
3
String dateStr = "2013-05-17 14:52:00.943"; 

SimpleDateFormat c = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss.S"); 
Date pDate = c.parse(dateStr); 
SimpleDateFormat p = new SimpleDateFormat("dd-MM-yyyy"); 

String formatDate = p.format(pDate); 

時間オフセットにコロンがある場合は、Joda Time を使用できます。

DateTimeFormatter jodaFormatter = ISODateTimeFormat.dateTime();
DateTime jodaParsed = jodaFormatter.parseDateTime("2013-05-17T16:27:34.9+05:30"); 
Date date = jodaParsed.toDate();
Calendar c = Calendar.getInstance(); 
c.setTime(date); 
c.get(Calendar.DATE));

joda の詳細については、こちらを参照してください。

于 2013-05-18T04:49:35.577 に答える