2012-03-01 15 views
0

jsonレスポンスの日付は次のようになります。DATEのJSONレスポンスの書式設定

{"dateTime":"2012-03-03T10:00:00.890+05:30"} 

私は2012年3月3日のように表示することを誓った。この日付を書式設定する方法

+0

あなたはJSONオブジェクトを解析するために使用しているプラ​​ットフォームに依存します。たとえば、PHPではdate()関数を使用できます:http://php.net/strtodate –

答えて

0

あなたは、Javaのでそれを行うこのようなSimpleDateFormatを使用する場合:

EDIT:で

String input = "2012-03-03T10:00:00.890+05:30"; 

は次のように私はそれを編集したシナリオに合わせてinput文字列の上にある場合は、: colonをタイムゾーンの部分から削除する必要があります。つまり、+05:30です。 this postのようにこれを行う正規表現を使用することができます。そして、あなたのフォーマットでそれを変換するために次のコードを使用してください:

DateFormat oldFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ"); 
DateFormat newFormat = new SimpleDateFormat("dd MMMMM yyyy hha"); 

String dateStr = newFormat.format(oldFormat.parse(input)); 
+0

それは動作します。返信に感謝:) – techiee

0

JSでは、この日付はスタンダード形式ですので、新しい日付(object.dateTime)が日付を解析します。その後、toGMTStringまたはtoLocalStringを使用することにより、正しいフォーマットになります。 返される文字列の最初の4文字と最後の4文字を削除するだけで済みます。

0

どの言語で日付を表示していますか?

この値を日付として解析しなければならない場合は、その日付の表示形式を変更することができます。

+0

申し訳ありません。それに言及するのを忘れていた.In Java言語 – techiee

0

answer by Kuldeep Jainが正しいです。しかし、java.util.Date/Calendarクラスの使用は避けてください。

代わりにJoda-Timeを使用するか、Java 8では新しいjava.time。*クラス(Joda-Timeに触発されています)を使用してください。

Joda-Timeでは、解析のために独自のspecific formatsを定義することができますが、必要でない場合もあります。 Joda-TimeのDateTimeクラスのコンストラクタは、使用しているISO 8601の形式を解析するために構築されています。

例コード...コンソールに

// © 2013 Basil Bourque. This source code may be used freely forever by anyone taking full responsibility for doing so. 
// import org.joda.time.*; 
// import org.joda.time.format.*; 

DateTimeZone timeZone_Kolkata = DateTimeZone.forID("Asia/Kolkata"); 

String input = "2012-03-03T10:00:00.890+05:30"; 
DateTime dateTime = new DateTime(input); 
DateTime dateTimeInUtc = dateTime.toDateTime(DateTimeZone.UTC); 
DateTime dateTimeInKolkata = dateTime.toDateTime(timeZone_Kolkata); 

DateTimeFormatter formatter = DateTimeFormat.forStyle("LS").withLocale(new Locale("en", "IN")); // English, India. 
String output = formatter.print(dateTime); 

ダンプ...

System.out.println("dateTime: " + dateTime); 
System.out.println("dateTimeInUtc: " + dateTimeInUtc); 
System.out.println("dateTimeInKolkata: " + dateTimeInKolkata); 
System.out.println("output: " + output); 

実行...

dateTime: 2012-03-02T20:30:00.890-08:00 
dateTimeInUtc: 2012-03-03T04:30:00.890Z 
dateTimeInKolkata: 2012-03-03T10:00:00.890+05:30 
output: 2 March, 2012 8:30 PM 
関連する問題