2011-08-12 7 views
0

私はNSDictionaryのように見えます。nsdictionaryから特定の日付を選択

dic is : { 
city = #; 
country = #; 
date = "2011-08-12 05:00:00 +0000"; 
"day_of_week" = Fri; 
high = 79; 
icon = "/ig/images/weather/chance_of_storm.gif"; 
low = 61; 
startdate = "2011-08-12 05:00:00 +0000"; 
state = #; 
} 


dic is : { 
city = #; 
country = #; 
date = "2011-08-13 05:00:00 +0000"; 
"day_of_week" = Fri; 
high = 79; 
icon = "/ig/images/weather/chance_of_storm.gif"; 
low = 61; 
startdate = "2011-08-12 05:00:00 +0000"; 
state = #; 

}

dic is : { 
city = #; 
country = #; 
date = "2011-08-14 05:00:00 +0000"; 
"day_of_week" = Sat; 
high = 79; 
low = 58; 
startdate = "2011-08-12 05:00:00 +0000"; 
state = #; 

}

if(([dd1 earlierDate:startDate]) &&[dd1 earlierDate:endDate]) 

       {  
        /*if([dd1 isEqualToDate:startDate] || [dd1 isEqualToDate:endDate]) 

私はテストケースからNSDate Sを渡しています。 Startdateとenddateがテストケースから渡され、dd1が日付であるパー​​サーから渡されます。私は2つの日付の間に値を取得しようとしているが、すべての4つの日付を取得しています私が望む日付の値だけを得るための解決策は何ですか?

DD1はNSDATEオブジェクトであり、私はNSDICTIONARY.SO DD1からそれを取得していますが、私はあなたが比較しようとしている201-08-12,2011-08-13 ETC

+0

これはまったく役に立ちませんでしたか? http://stackoverflow.com/questions/7032347/get-date-from-an-nsdictionary-and-match-them – Joe

答えて

0

AS DATESを取得していますFORLOOP内で実行されていますNSDictionaryからNSDateまでです。 dateFormate文字列の最後の部分についてはよく分から

NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
[formatter setDateFormat:@"yyyy-mm-dd HH:mm:ss zz"]; 
NSDate *startDate = [formatter dateFromString:[dd1 objectForKey:@"startdate"]]; 
NSDate *date = [formatter dateFromString:[dd1 objectForKey:@"date"]]; 
NSTimeInterval intervalInSeconds = [startDate timeIntervalSinceDate:date]; 
[formatter release]; 

ない100%が、それが動作するはずです:これは、あなたが日付を抽出し、その差を計算する方法をです。

+0

私はそれをやろうとしています.. – iph

+0

NSDateはNSDateが必要とされるすべての比較メソッドを提供するので完全に不要ですここに。 – glorifiedHacker

+0

@glorifiedHacker Cool。どのようにNSStringからNSDateを取得しますか? – Mundi

0

あなたが投稿したコードのビットから、あなたが話している4つの日付は明らかではありません。ただし、booleanロジックをオブジェクトに適用しようとすると、if文は意味を持ちません(earlierDate:NSDateオブジェクトへのポインタを返します)。

if(([dd1 compare:startDate] == NSOrderedDescending) && ([dd1 compare:endDate] == NSOrderedAscending)) 

これは、dd1が表す日付がstartDateとendDateの間にある場合にのみtrueに評価されます。

+0

私のnsdictionryは何かのようです:{ city =#; 国=#; date = "2011-08-12 05:00:00 +0000"; 「day_of_week」=金; 高= 79; icon = "/ig/images/weather/chance_of_storm.gif"; 低= 61; startdate = "2011-08-12 05:00:00 +0000"; state =#; } dicは{ 都市=#; 国=#; date = "2011-08-13 05:00:00 +0000"; "day_of_week" = Sat; 高= 79; 低= 58; startdate = "2011-08-12 05:00:00 +0000"; state =#; } – iph

+0

コメントにそのような種類のものを投稿しないでください。実際にはその形式では判読できません。あなたの質問を編集し、その情報を適切な形式で追加します。 – glorifiedHacker

+0

投稿を編集して、追加の辞書情報が含まれていることがわかりました。あなたは私が上記に投稿したifステートメントを試しましたか?それがあなたのために働いていない場合、あなたは問題が何であるかをより詳細に説明する必要があります。 – glorifiedHacker

関連する問題