web-dev-qa-db-ja.com

Java文字列を日付ではなく時刻に変換

Javaを使用して、DateではなくTime型変数に変数文字列を変換したいと思います。文字列は次のようになります17:40

以下のコードを使用してみましたが、このインスタンスは時間ではなく日付型変数です

String fajr_prayertime  =       prayerTimes.get(0);
DateFormat formatter = new SimpleDateFormat("HH:mm");
fajr_begins = (Date)formatter.parse(fajr_prayertime);
System.out.println(" fajr time " + fajr_begins);

ただし、Netbeanは、次のように例外を挿入する必要があると文句を言います。

DateFormat formatter = new SimpleDateFormat("HH:mm");
try {
fajr_begins = (Date)formatter.parse(fajr_prayertime);
} catch (ParseException ex) {
Logger.getLogger(JavaFXApplication4.class.getName()).log(Level.SEVERE, null, ex);
}
System.out.println(" fajr time " + fajr_begins);

上記の文字列から時間を取得する方法はありますか。

21
Ossama
Java.sql.Time timeValue = new Java.sql.Time(formatter.parse(fajr_prayertime).getTime());
28
ash

Joda Time または Java 8 を検討することができます。これは LocalTime と呼ばれるタイプを持ち、特に日付のない時刻用です。成分。

Joda-Time 2.7/Java 8のサンプルコード。

LocalTime t = LocalTime.parse( "17:40" ) ;
12

次の例をご覧ください。

public static void main(String[] args) {

    String myTime = "10:30:54";
    SimpleDateFormat sdf = new SimpleDateFormat("hh:mm:ss");
    Date date = null;
    try {
        date = sdf.parse(myTime);
    } catch (ParseException e) {
        e.printStackTrace();
    }
    String formattedTime = sdf.format(date);

    System.out.println(formattedTime);

}
5
Michael Ardan
try {

    SimpleDateFormat format = new SimpleDateFormat("hh:mm a"); //if 24 hour format
    // or
    SimpleDateFormat format = new SimpleDateFormat("HH:mm"); // 12 hour format

    Java.util.Date d1 =(Java.util.Date)format.parse(your_Time);

    Java.sql.Time ppstime = new Java.sql.Time(d1.getTime());

} catch(Exception e) {

    Log.e("Exception is ", e.toString());
}
5
Paris1008
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:MM");
simpleDateFormat.format(fajr_prayertime);
2
Khusboo

次のコードを使用して、文字列値を同等の時間に変更できます。

 String str = "08:03:10 pm";
 DateFormat formatter = new SimpleDateFormat("hh:mm:ss a");
 Date date = (Date)formatter.parse(str);

これがお役に立てば幸いです。

2
shivam

試してみてください...

 Java.sql.Time.valueOf("10:30:54");
1

文字列から時間(任意の時間を使用):

String myTime = "10:00:00"; 
Time startingTime = new Time (myTime);

文字列から時刻(currentTimeを使用):

String currentTime = getCurrentTime(); 
Time startingTime = new Time (currentTime);

ストリングまでの時間:

private String getCurrentTime() {    
    SimpleDateFormat dateFormat = new SimpleDateFormat("kkmmss");
    String currentTime = dateFormat.format(System.currentTimeMillis());
    return currentTime;
}
0
JanB

Joda-TimeおよびJava.time

Joda-TimeJava.time の両方(Java 8の新機能)は、時間を表すLocalTimeクラスを提供します-日付またはタイムゾーンなしの日。

Joda-Time 2.3のサンプルコード。

LocalTime localTime = new LocalTime( "14:40" );
LocalTime deadline = new LocalTime( "15:30" );
boolean meetsDeadline = localTime.isBefore( deadline );
0
Basil Bourque