日付と時刻を文字列に保存しています。つまり、文字列には str ="18/01/2013 5:00:00 pm" が含まれています。Androidで24形式の時間に変換するにはどうすればよいですか?
3514 次
5 に答える
2
2 つの SimpleDateFormat インスタンスを使用できます。1 つは入力を日付として解析し、もう 1 つは日付を目的の形式の文字列としてフォーマットします。
たとえば、formattedDate
以下のコードでは次のようになります18/01/2013 17:00:00
。
String str = "18/01/2013 5:00:00 pm";
SimpleDateFormat input = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss a");
Date dt = input.parse(str);
SimpleDateFormat output = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
String formattedDate = output.format(dt); //contains 18/01/2013 17:00:00
ノート:
hh
は午前/午後の時間 (1-12)HH
で、1 日の時間 (0-23) です。- その他の書式設定オプションについては、javadocを確認してください
于 2013-01-18T12:18:28.130 に答える
1
試す
String str ="18/01/2013 5:00:00 pm";
Date date = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss a").parse(str);
str = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(date);
System.out.println(str);
出力
18/01/2013 17:00:00
于 2013-01-18T12:22:15.017 に答える
1
AM PM および 12 時間形式の日付形式を取得するにはhh:mm:ss a
、文字列フォーマッタとして使用します。WHEREhh
は 12 時間形式用でa
あり、AM PM 形式用です。
注: HH は24
時間、hh は12
時間の日付形式です。
SimpleDateFormat formatter = new SimpleDateFormat("mm/dd/yyyy hh:mm:ss a");
String newFormat = formatter.format(testDate);
例
String date = "18/01/2013 5:00:00 pm";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/mm/dd HH:MM:SS");
Date testDate = null;
try {
testDate = sdf.parse(date);
}catch(Exception ex){
ex.printStackTrace();
}
SimpleDateFormat formatter = new SimpleDateFormat("mm/dd/yyyy hh:mm:ss a");
String newFormat = formatter.format(testDate);
System.out.println(".....Date..."+newFormat);
于 2013-01-18T12:24:15.790 に答える
0
Java SimpleDateFormat クラスを使用してみてください。
例:
SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
df.parse(date);
大文字の HH は 24 時間形式を使用します
于 2013-01-18T12:18:58.327 に答える
0
そのために SimpleDateFormat を使用できます。
SimpleDateFormat dateFormat = new SimpleDateFormat(dd/mm/yyyy HH:mm:ss");
あなたの要件とは反対のこれを参照してください。リンクを投稿しただけなので、HH と hh の違いがわかるかもしれません。
于 2013-01-18T12:18:11.490 に答える