9

次のようなXMLファイルの解析から文字列を取得しました:Fri、09 Apr 2010 00:00:45 +0200そして対応するパターンは次のようになります"EEE、dd MMM yyyy HH:mm:ss ZZ"、しかし私は(ヌル)。

これは私のコードです:

NSString *dateString = @"Fri, 09 Apr 2010 00:00:45 +0200";

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZ"];

NSDate *date = [dateFormatter dateFromString:dateString];
NSLog(@"date:%@",date); // result date:(null)

編集:

これは今私にとってはうまくいきます、私はen-USロケールに切り替える必要がありました:

NSLocale* usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en-US"];

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[dateFormatter setLocale:usLocale];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZ"];

NSDate *date = [dateFormatter dateFromString:dateString];
4

1 に答える 1

9

私がこの行を変更したとき、あなたのコードは私のために働きました:

[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZ"];

この行に:

[dateFormatter setDateFormat:@"EEE',' dd MMM yyyy HH:mm:ss ZZ"];
于 2010-04-11T21:53:30.323 に答える