您的位置:首页 > 移动开发 > IOS开发

ios中将字符串转换为时间显示

2013-12-24 20:45 387 查看
NSString *dateStr=@"Dec 8, 2013 6:24:38 PM";

要将dateStr格式化输出,需要用NSDateFormatter进行格式化输出,而且要设置Locale,setDateFormat中格式化符

一定要和dateStr中的对应,否则转换后输出为null,代码如下:

NSDateFormatter *inputFormatter = [[[NSDateFormatter alloc] init] autorelease];

[inputFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]];

[inputFormatter setDateFormat:@"MMM d,yyyy hh:mm:ss aa"];

NSDate* inputDate = [inputFormatter dateFromString:dateStr];

NSDateFormatter *outputFormatter = [[[NSDateFormatter alloc] init] autorelease];

[outputFormatter setLocale:[NSLocale currentLocale]];

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

NSString *str = [outputFormatter stringFromDate:inputDate];

NSDateFormatter的格式说明如下:

G: 公元时代,例如AD

公元 yy: 年的后2位

yyyy: 完整年

MM: 月,显示为1-12

MMM: 月,显示为英文月份简写,如 Jan

MMMM: 月,显示为英文月份全称,如 Janualy

dd: 日,2位数表示,如02

d: 日,1-2位显示,如 2

EEE: 简写星期几,如Sun

EEEE: 全写星期几,如Sunday

aa: 上下午,AM/PM

H: 时,24小时制,0-23

K:时,12小时制,0-11

m: 分,1-2位

mm: 分,2位

s: 秒,1-2位

ss: 秒,2位

S: 毫秒
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: