如何更改日期和时间格式?

时间:2012-10-05 12:46:10

标签: iphone objective-c ios ios5

  

可能重复:
  How to change the date format in iphone sdk

实际上我正在以24小时时间格式获得一个字符串。我希望显示12小时的时间格式。

这是我的意见:

2012-10-19T04:10:00

2012-10-06T14:00:00

我想采用以下格式:

10-19-2012 4:10 AM

10-06-2012 2:00 PM

4 个答案:

答案 0 :(得分:1)

:使用NSDateFormatter更改日期

这里您的输入:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss"];
NSDate *Yourcurrenttime = [dateFormatter dateFromString:Yourstring];

并将日期转换为String ..

NSDateFormatter *dateFormatterNew = [[NSDateFormatter alloc] init];
[dateFormatterNew setDateFormat:@"mm-dd-yyyy hh:mm a"];

NSString *stringForNewDate = [dateFormatterNew stringFromDate:Yourcurrenttime];

答案 1 :(得分:0)

使用格式类型为NSDateFormatter的{​​{1}}。 希望这可以帮助你..

答案 2 :(得分:0)

在大多数情况下,您只需要使用NSDateFormatterStyle中定义的默认样式。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];
NSLog(@"%@", [dateFormatter stringFromDate:[NSDate date]]);

[dateFormatter release];

//输出:2008年12月2日下午3:58

你也可以通过类似下面的DateFormatter来编写输出。

NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"MM-dd-yyy HH:mm:s a"];

NSString *convertedString = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"Converted String : %@",convertedString);

:)

答案 3 :(得分:0)

NSDate *currentDate = [NSDate date];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd-MM-yyyy hh:mm a"]; //You can set different formats for the date
NSLog(@"Current Date %@",[formatter getStringFromDate:currentDate"]);
[formatter release];