私のアプリケーションでは、このような文字列で時間を取得しています。
starttime(文字列) : 10:00 AM
endtime(文字列) : 12:22 PM
現在の時刻は午前 11 時 55 分です
現在の時刻が starttime と endtime の間にあることを確認するにはどうすればよいですか?
私のアプリケーションでは、このような文字列で時間を取得しています。
starttime(文字列) : 10:00 AM
endtime(文字列) : 12:22 PM
現在の時刻は午前 11 時 55 分です
現在の時刻が starttime と endtime の間にあることを確認するにはどうすればよいですか?
この方法を使用します:
最初に文字列をNSDate
usingに変換しますNSDateFormatter
。
次に、これらの 2 つの日付を currentDate と直接比較します[NSDate date]
。
NSDate のこれら 2 つのインスタンス メソッドを使用できます。
isGreaterThan:
とisLessThan:
または、
if (! (([currentDate compare:startDate]==NSOrderedAscending) && ([currentDate compare:endDate]==NSOrderedDescending)){
NSLog(@"Valid date");
}
最初に AM と PM を削除してみてください
その PM のように、その時間枠に +12 を追加します。
次に、「:」の前にある現在の時刻の数字が開始時刻よりも大きく、終了時刻よりも小さいかどうかを確認します。true が返された場合は、「:」の後の数字を確認できます。