2012-04-25 7 views
0

コアデータによって管理されるテーブルビューでは、日付フィールドがあります。今すぐ入手する必要がありますが、出力にエラーがあります。エンティティによって抽出されたデータのフォーマット

for (FesteGruppo *festeGruppoEntity in arrayController_.selectedObjects) { 
       NSString *valorePrimaFesta=[festeGruppoEntity.data descriptionWithCalendarFormat:@"%w" timeZone:nil locale:nil]; 
       int prova = [valorePrimaFesta intValue]; 

       if (prova==0) { 
        --domenica; 
       } else if (prova==1){ 
        --lunedi; 
       } else if (prova==2){ 
        --martedi; 
       } else if (prova==3){ 
        --mercoledi; 
       } else if (prova==4){ 
        --giovedi; 
       } else if (prova==5){ 
        --venerdi; 
       } else if (prova==6){ 
        --sabato; 
       } 

       NSLog(@"The entity's date is %@", festeGruppoEntity.data); 
       NSLog(@"The date number is %i", prova); 
      } 

私はこの日付入れ:2012年10月4日(DD/MM/YYYY)を、私はこの結果を得る: エンティティの日付が2013年4月9日午後10時00分00秒0000 です日付は3です。 私は上記の日付を取得する必要があります、私はどのようにすることができますか?

答えて

1

あなたはGMT + 02:00のタイムゾーンにいると思います。また、2013年に日付を入力したか、出力を誤ってコピーしたと推測しています。時間情報のない2012年10月4日の日付は、あなたのタイムゾーンでは、 "2012-04-10 00:00:00 +0200"と同じです。これは "2012-04-09 22:00:00 + 0000 "となる。 NSDateはGMT + 00:00で自分自身を記録します。

-descriptionWithCalendarFormat:timeZone:locale:メソッドのtimeZone:パラメータには、nilではなく、実際の値を渡す必要があると思います。

関連する問題