JavaでDATETIME関数を変換するのを手伝ってくれる人はいますか? SMS ヘッダーから「Fri May 18 09:22:39 FJT 2012」という形式で日時形式を取得します。この形式「2012-05-18 09:51:42.39」に変換したいと思います。
3 に答える
0
@Guillaumeが提案したように、SimpleDateFormatを使用します。次に例を示します。
public String convert() throws ParseException {
SimpleDateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy");
Date output = format.parse("Fri May 18 09:22:39 FJT 2012");
Calendar outputCal = Calendar.getInstance(format.getTimeZone());
outputCal.setTime(output);
return String.format("%04d-%02d-%02d %02d:%02d:%02d",outputCal.get(Calendar.YEAR), outputCal.get(Calendar.MONTH)+1, outputCal.get(Calendar.DAY_OF_MONTH), outputCal.get(Calendar.HOUR_OF_DAY), outputCal.get(Calendar.MINUTE), outputCal.get(Calendar.SECOND));
}
すべてがハードコーディングされています-必要に応じてパラメータを追加する必要があります
于 2012-05-17T22:45:48.150 に答える
0
import java.text.SimpleDateFormat;
..。
String d = "Fri May 18 09:22:39 FJT 2012";
SimpleDateFormat inputFormat = new SimpleDateFormat("EEE MMM d HH:mm:ss ZZZ yyyy");
SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss.SS");
outputFormat.setTimeZone(TimeZone.getTimeZone("GMT")); // set yr time zone for output
Date date = inputFormat.parse(d);
System.out.println(outputFormat.format(date));
于 2012-05-17T22:47:36.057 に答える
0
そのためにSimpleDateFormatを使用します。タイムゾーン「FJT」がJavaで知られているかどうかはわかりませんが。そのため、そのためにいくつかのトリックを行う必要があるかもしれません。
于 2012-05-17T22:07:33.960 に答える