2017-01-31 10 views
-2

私は2つの日付を比較していますが、結果はバイナリ(1真0偽)で表示されます。タイムスタンプの比較が間違っているobj-c

2017年1月31日7時03分19秒0000 < 2017年1月31日午前七時04分33秒0000、0

は、なぜ、この比較は失敗していますか?私はCLLocationのタイムスタンプを使用してOBJ-Cとイムを使用しています

+3

いくつかのコードを貼り付けます。あなたはどう比較していますか? NSCalendarを比較しますか? – Joshua

+0

ジョシュア、私は私が比較しているものを比較し、比較しています。ちょっとお読みください。私はObj-cとCLLocationのタイムスタンプを使っていますが、2つの日付の真ん中には簡単な演算子があります。 しかし、あなたが正しいかどうかわかりません。私の質問を読んでいないと思い、コード例を探していたと思うのですが、下の人が私が望んだものを正確に把握できたのは面白いです。彼は –

+0

を読んで、あなたが望むものを達成する方法の多くがあります。あなたは比較している、あなたはnscalendarを持っている、など。今、もしあなたがサンプルコードを提供したら、おそらくそこから始めることができます。あなたの質問は、あなたが現在使用しているものが不明です、stackoverflowはあなたが投稿するサイトではありません、私たちはあなたの現在のものを強化するサイトに答えます。あなたはちょうどstackoverflowを使用する方法を知らない。 – Joshua

答えて

1

まず、あなたはこれらの2列2017年1月31日午前7時03分19秒0000と2017年1月31日午前7時04分に変換する必要があります。 33 +0000〜NSDate

次に、両方の日付を比較して結果を得ることができます。

NSDateFormatter *formatter = [NSDateFormatter new]; 
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"]; 
NSDate *date1 = [formatter dateFromString:@"2017-01-31 07:03:19 +0000"]; 
NSDate *date2 = [formatter dateFromString:@"2017-01-31 07:04:33 +0000"]; 
if ([date1 compare:date2]==NSOrderedAscending) { 
    NSLog(@"Date 2 is higher than Date 1"); 
} 
else if ([date1 compare:date2]==NSOrderedDescending) { 
    NSLog(@"Date 1 is higher than Date 2"); 
} 
else{ 
    NSLog(@"Date 1 and Date 2 both are same"); 
} 
+0

彼らは実際に日付として始まったのですが、日付の部分を比較すると何がうまくいくのですか、私はちょうど日付を間違って比較していました –

関連する問題