3

私はこの分野に不慣れです。この質問はばかげているかもしれません。

NSDateFormatter2012年12月30日と2012年12月31日の1年先の日付を与えています。2013年12月30日および2013年12月31日についても、2014年に年を延期します。

私のコードは次のとおりです。

 -(NSString*)getDateOrTime:(NSDate *)inDate formatter:(NSString *)lformat
 {
 NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
     [formatter setDateFormat:lformat];//@"MMM-dd-yyyy"];
     NSString *currentDate = [formatter stringFromDate:inDate];// here it is giving wrong    date
     // it is happening for only mentioned specific dates only
     [formatter release];

     return currentDate;
 }

どうすれば正しい日付を教えてもらうことができますか?

4

2 に答える 2

1

タイムゾーンに関するフォーマッタ情報を提供していないため、NSDateFormatter は日付を GMT 時間と見なします。正しいタイムゾーンを設定する必要があります — dateFormatter に設定するか、文字列に追加してください。Stack Overflow には、これに関する何百もの投稿があります。

于 2012-12-18T13:28:39.443 に答える
-1

フォーマットは次のとおりです。

指定された日付形式は@"MM-dd-yyyy"

  [formatter setDateFormat:lformat];//@"MM-dd-yyyy"];

MM日付形式に従ってのみ使用する必要があります。

于 2012-12-18T13:14:30.557 に答える