2016-03-24 14 views
2

現在の時刻とテキストファイルから取得した時刻を比較しようとするといくつかの問題がありました。私のテキストファイルからの時間は12時間形式で、例えば12:30 PMです。現在、私は12時間形式で時間の間で比較することで、それを変換する方法を私がわからない、24時間形式で時刻を比較している、このコードを持っている:事前に12時間形式で2倍の変数を比較する方法

public static final String inputFormat = "HH:mm"; 

private Date date; 
private Date dateCompareOne; 
private Date dateCompareTwo; 

private String compareStringOne = "9:45"; 
private String compareStringTwo = "1:45"; 

SimpleDateFormat inputParser = new SimpleDateFormat(inputFormat, Locale.US); 

private void compareDates(){ 
    Calendar now = Calendar.getInstance(); 

    int hour = now.get(Calendar.HOUR); 
    int minute = now.get(Calendar.MINUTE); 

    date = parseDate(hour + ":" + minute); 
    dateCompareOne = parseDate(compareStringOne); 
    dateCompareTwo = parseDate(compareStringTwo); 

    if (dateCompareOne.before(date) && dateCompareTwo.after(date)) { 
     //yada yada 
    } 
} 

private Date parseDate(String date) { 

    try { 
     return inputParser.parse(date); 
    } catch (java.text.ParseException e) { 
     return new Date(0); 
    } 
} 

感謝。

答えて

0

入力フォーマットとしてHH:mmの代わりにh:mm aを使用してください。 AM/PMで時間

public static final String inputFormat = "h:mm a"; 
  • hスタンド(1-12)時間内分間
  • mmスタンドAMまたはPM

ため

  • aスタンドはまた、あなたのことに注意してください2つのテスト文字列の例に、AM/PMマーカーがありません。

  • 関連する問題