string timeをDateオブジェクトと一緒に出力するため、Timeオブジェクトに変換する際に問題が発生しました。これは私のコードです。
String time = "15:30:18";
DateFormat sdf = new SimpleDateFormat("hh:mm:ss");
Date date = sdf.parse(time);
System.out.println("Time: " + date);
javaで日付なしで時刻のみを変換して印刷する方法。例を挙げればもっと良いでしょう。
ありがとうございました。
解析に使用したものと同じSimpleDateFormat
を使用します。
String time = "15:30:18";
DateFormat sdf = new SimpleDateFormat("hh:mm:ss");
Date date = sdf.parse(time);
System.out.println("Time: " + sdf.format(date));
Date
オブジェクトは、常に日付と時刻の値の組み合わせを表すことに注意してください。日付のみまたは時間のみの値を適切に表すことはできないため、正しいDateFormat
を使用して、必要な部分のみを「表示」する必要があります。
これも機能します
String t = "00:00:00"
Time.valueOf(t);
日付やタイムゾーンのない時間のみの値が必要な場合は、 Joda-Time ライブラリまたはJava 8(Joda-Timeに触発されました)。
これらのフレームワークはどちらもLocalTime
クラスを提供します。
Joda-Time2.4では…
LocalTime localTime = new LocalTime( "15:30:18" );
Java.timeでは…
LocalTime localTime = LocalTime.parse( "15:30:18" );