Der String-Eingang ist '20100908041312'Konvertieren von Adobe PDF-Datum String zu NSDate
das Format Jahr, Monat, Tag, Stunden, Minuten, Sekunden, die Zeitzone
und ich habe ben versucht, es zu konvertieren zu einem NSDate mit diesem: @"yyyyMMddHHmmsszz"
Aber NSDate ist Null, jemand sehen, was ich falsch mache?
-(NSDate*)convertPDFDateStringAsDate:(NSString*) _string{
//20100908041312
//year month day Hours minutes seconds and time zone
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyyMMddHHmmsszz"];
NSDate *date = [dateFormat dateFromString:_string];
//date is nil...
[dateFormat release];
return date;
}
EDIT: es ist die Zeitzone es
EDIT2 brechen: @"yyyyMMddHHmmssTZD"
es null zurückkehrt stoppt, aber dosnt richtig
EDIT3 die Zeitzone wählen: Dies ist der Code war ich am Ende verwendet. ..i fand heraus, dass das Format von PDF zu PDF ändert, so dass der Code die Variationen behandelt, die ich gefunden habe, in einigen Fällen wont die Zeitzone richtig extrahieren.
-(NSDate*)convertPDFDateStringAsDate:(NSString*) _string{
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
NSString * formatCheck = [_string substringToIndex:2];
if(![formatCheck isEqualToString:@"D:"])
{
NSLog(@"ERROR: Date String wasnt in expected format");
return nil;//return [NSDate date];
}
NSString * extract = [_string substringFromIndex:2];
//NSLog(@"DATESTRING:'%@'",extract);NSLog(@"DATELENGTH:%i",[extract length]);
if([extract length]>14)
{
[dateFormat setDateFormat:@"yyyyMMddHHmmssTZD"];
}
else
{
[dateFormat setDateFormat:@"yyyyMMddHHmmss"];
}
NSDate * date = [dateFormat dateFromString:extract];
[dateFormat release];
return date ;
}
D'oh! Ich habe die ganze Forschung umsonst gemacht! :) –
es wurde trotzdem geschätzt :) –