2012-06-21 8 views

Antwort

29

Verwenden Sie NSDateFormatter, um die Zeichenfolge in NSDate zu drehen. Dann verwenden Sie den Dateformatter erneut, um die NSDate in eine Zeichenfolge zu ändern.

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
dateFormatter.dateFormat = @"HH:mm"; 
NSDate *date = [dateFormatter dateFromString:@"15:15"]; 

dateFormatter.dateFormat = @"hh:mm a"; 
NSString *pmamDateString = [dateFormatter stringFromDate:date]; 

Code könnte einige Fehler enthalten, die ohne Kompilieren oder Testen geschrieben wurden.

+3

Stellen Sie sicher, dass das Gebietsschema des Formatierers vor dem Start auf en_US_POSIX eingestellt ist. –

+0

kannst du mir sagen, wie ich es einstellen soll? – python

+0

Danke. Arbeitscode für mich. NSDateFormatter * timeFormatter = [[NSDateFormatter alloc] init]; [timeFormatter setDateFormat: @ "HH: mm"]; timeFormatter.dateFormat = @ "hh: mm a"; txtTime.text = [timeFormatter stringFromDate: myTimePickerView.date]; –

-1
// Get your 24 hr time String format 
NSString *timeString = [NSString stringWithFormat:@"%@",[[[arr valueForKey:@"data"] valueForKey:@"pickup_time"] objectAtIndex:indexPath.row]]; 

//Store your 24 hr time String format into string 
     NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
     [dateFormatter setDateFormat:@"HH:mm:ss"]; 
     NSDate *time = [dateFormatter dateFromString:timeString]; 

// Convert time object into desired format 
[dateFormatter setDateFormat:@"hh:mm.a"]; 
cell.lbl_BookingTm.text = [NSString stringWithFormat:@"%@",[dateFormatter stringFromDate:time]]; //Get your string into 12 hr time String format 
+0

Warum erstellen Sie eine neue Zeichenfolge, wenn Sie es der Bezeichnung zuweisen? – rckoenes

2

@python

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]; 
[dateFormatter setLocale:locale]; 
[dateFormatter setDateFormat:@"hh:mm"]; 

hoffe, das hilft!

Verwandte Themen