2012-04-02 4 views
0
NSDate *date=[[NSDate alloc] init]; 
    NSDateFormatter *dfLocal=[[NSDateFormatter alloc]init]; 
    [dfLocal setDateFormat:@"yyyy-MM-dd"]; 
    date=[dfLocal dateFromString:@"2011-09-22"]; 
    NSLog(@"the date is %@",date); 

dies mein Code und gibt die Ausgabe als ..Was mache ich falsch in diesem Datum Formatter

2012-04-02 18:13:45.338 TimeProblem[2656:207] the date is 2011-09-21 18:30:00 +0000 

, warum es dies anhängt .. 18.30.00 0.000 bis zum Ende ..? Ich möchte nur, dass es als 00:00:00 + 0000

Antwort

3

Verwendung unter:

NSDate *date=[[NSDate alloc] init]; 
NSDateFormatter *dfLocal=[[NSDateFormatter alloc]init]; 
[dfLocal setDateFormat:@"yyyy-MM-dd"]; 
[dfLocal setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]]; 
date=[dfLocal dateFromString:@"2011-09-22"]; 

NSLog(@"the date is %@",date); 
0

hallo Sie Datum und Uhrzeit dann verwenden Sie so erhalten möchten.

[dfLocal setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; 

hoffe das wird dir helfen.

+0

Dies gibt null zurück, wenn ich den obigen Code verwende. –

1

Sie in sind GMT + 5.30. Deshalb bekommen Sie den Zeitversatz. Es ist ein Zeitzonenproblem. Das Hinzufügen dieser Zeile würde das Problem lösen.

[dfLocal setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];