0

2012 年 1 月の日付がありNSDateFormatterます。そのような日付が必要です。

これが私のコードです...

//Array of Date-formatter Strings
NSArray *dateFormatterList = [
    NSArray arrayWithObjects:
        @"yyyy-MM-dd'T'HH:mm:ss'Z'", 
        @"yyyy-MM-dd'T'HH:mm:ssZ",
        @"yyyy-MM-dd'T'HH:mm:ss", @"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
        @"yyyy-MM-dd'T'HH:mm:ss.SSSZ", @"yyyy-MM-dd HH:mm:ss",
        @"MM/dd/yyyy HH:mm:ss", @"MM/dd/yyyy'T'HH:mm:ss.SSS'Z'",
        @"MM/dd/yyyy'T'HH:mm:ss.SSSZ", @"MM/dd/yyyy'T'HH:mm:ss.SSS",
        @"MM/dd/yyyy'T'HH:mm:ssZ", @"MM/dd/yyyy'T'HH:mm:ss",
        @"yyyy:MM:dd HH:mm:ss", @"yyyyMMdd", @"dd-MM-yyyy",
        @"dd/MM/yyyy", @"yyyy-MM-dd", @"yyyy/MM/dd",
        @"dd MMMM yyyy", @"MMddyyyy", @"MM/dd/yyyy", 
        @"MM-dd-yyyy",@"d'st' MMMM yyyy",
        @"d'nd' MMMM yyyy", @"d'rd' MMMM yyyy",
        @"d'th' MMMM yyyy", @"d'st' MMM yyyy",
        @"d'nd' MMM yyyy", @"d'rd' MMM yyyy",
        @"d'th' MMM yyyy", @"d'st' MMMM",
        @"d'nd' MMMM", @"d'rd' MMMM",
        @"d'th' MMMM", @"d'st' MMM",
        @"d'nd' MMM", @"d'rd' MMM",
        @"d'th' MMM",@"MMMM yyyy",nil];

NSString *targetDateFormatString  = @"dd-MM-yyyy";

count++; 

if (resultString) {
    for (NSString *dateFormatterString in dateFormatterList) {
        NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
        [dateFormatter setDateFormat:dateFormatterString];
        NSDate *originalDate = [dateFormatter dateFromString:resultString];

        if (originalDate) {
            [dateFormatter setDateFormat:targetDateFormatString];
            myDateString = [dateFormatter stringFromDate:originalDate];
            [finalDateArray addObject:myDateString];
            //NSLog(@"Converted date String is %@", myDateString);
            break;
        }
    }
}
4

1 に答える 1

1

2000 年 1 月の場合

試す、

@"MMMM, yyyy"

および 2000 年 1 月の場合

試す

@"MMMM yyyy"

これで他の質問への回答も更新しました。このリンクで私の回答を確認してください

アップデート:

問題の上記のコードでresultString = @"January 2000"、もう一度やり直してください。として取得してい"01-01-2000"ます。あなたの質問に対する他の回答を方法として更新しました。そのメソッドを使用して、 として呼び出します[self dateStringFromString:@"January 2000" destinationFormat:@"dd-MM-yyyy"]01元の文字列には日付パラメーターが存在しないため、デフォルトの日付として表示されることに注意してください。

于 2012-10-30T22:42:30.910 に答える