2011-02-09 8 views
1

非常に簡単な作業です。 Wed、26 Jan 2011 22:27:09 +0000という形式のサービスから私に送られたタイムスタンプを再フォーマットしたい。一見標準的なタイムスタンプをJavaで解析するにはどうすればよいですか?

String format = "EEEE; MMMM d, yyyy"; 
String timestamp = "Wed, 26 Jan 2011 22:27:09 +0000"; 
Date date = new SimpleDateFormat(format).parse(timestamp); 
Log.d("Test", date.toString()); 

私は.parse()方法ができるようになりますどのような形式で見つけることができませんでしたが、この1はParseExceptionをスローします。

答えて

5

あなたが試してみました:

String format = "EEE, dd MMM yyyy HH:mm:ss Z"; 

を私はformatがあなたのテスト文字列を解析することを使用する場合、私は(中部標準時で)取得する:それは "について幸せではなかったよう

Wed Jan 26 16:27:09 CST 2011 
+0

らしいです; "私の形式で。私にとってはPHPが多すぎますね。どのように文字列のリテラルでそれをエスケープするように私は "火曜日、1月"を持つことができます任意のアイデア? – typeoneerror

+0

ああ、ありがとうございます。私は愚かだ。私はparse()が日付ベースの文字列を私が望む形式に解析し、その形式を使用する必要はないと考えました。私はそれがPHPのstrtotime()のようだと思った。ありがとう! – typeoneerror

+1

@typeonerror - ';'を一重引用符で囲むようにしてください。非形式文字をエスケープする典型的な方法です。 「火曜日、1月」に​​は「EEEE」を試してください; MMMM' –

関連する問題