1、如何如何将一个字符串如“
20110826134106”装化为任意的日期时间格式,下面列举两种类型:
NSString*
string =
@"20110826134106";
NSDateFormatter
*inputFormatter = [[[NSDateFormatter alloc] init]
autorelease];
[inputFormatter
setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]
autorelease]];
[inputFormatter
setDateFormat:@"yyyyMMddHHmmss"];
NSDate*
inputDate = [inputFormatter
dateFromString:string];
NSLog(@"date =
%@",
inputDate);
NSDateFormatter
*outputFormatter = [[[NSDateFormatter alloc] init]
autorelease];
[outputFormatter
setLocale:[NSLocale
currentLocale]];
[outputFormatter
setDateFormat:@"yyyy年MM月dd日
HH时mm分ss秒"];
NSString *str =
[outputFormatter
stringFromDate:inputDate];
NSLog(@"testDate:%@",
str);
两次打印的结果为:
date =
2011-08-26 05:41:06
+0000
testDate:2011年08月26日
13时41分06秒
说明:上面的时间是美国时间,下面的没有设置
NSString* string = @"Wed, 05 May 2011 10:50:00
+0800";
NSDateFormatter *inputFormatter
= [[[NSDateFormatter alloc] init]
autorelease];
[inputFormatter
setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]
autorelease]];
[inputFormatter
setDateFormat:@"EEE, d MMM yyyy HH:mm:ss
Z"];
NSDate* inputDate = [inputFormatter
dateFromString:string];
NSLog(@"date =
%@", inputDate);
PS:http://www.wangdg.com/?p=207
2、以前一直为这个事情纠结,无奈只能拼接字符串:
NSString
*str=@"20120403000000";
NSString *dateStr=[NSString
stringWithFormat:@"有效期至:%@年%@月%@日",
[str substringWithRange:NSMakeRange(0,
4)],
[str substringWithRange:NSMakeRange(4,
2)],
[str substringWithRange:NSMakeRange(6,
2)]];
这个方法笨,可是没办法,查了好多资料,都没明白,今天突然明白了,呵呵,只要把那个[inputFormatter
setDateFormat:@"EEE, d MMM yyyy HH:mm:ss
Z"];@“”里面的格式转化为你字符串的格式一切就OK了,不知道我说明白了吗
3、iOS-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:
毫秒
常用日期结构:
yyyy-MM-dd
HH:mm:ss.SSS
yyyy-MM-dd
HH:mm:ss
yyyy-MM-dd
MM dd
yyyy
相关文章
- 11-30json.net 字典json字符串相互转换
- 11-30c – std :: stringstream operator >>无法将字符串转换为float
- 11-30c – 如何在使用字符串流时停止双精度转换为科学记数法
- 11-30python 时间字符串与日期转化
- 11-30[python] 字符串与列表、字典的转换
- 11-30python中时间对象生成及时间格式的转换
- 11-30LeetCode --- 字符串系列 --- 转换成小写字母
- 11-30springmvc-时间类型转换器
- 11-30各类坐标系相互之间的转换(84互转GC02,GC02互转BD09)
- 11-30day07(数据类型的相互转换 ,字符编码)