转换stringdate格式
我在这个队友中有string的date“Tue,23 Oct 2012 01:05:00 +0000” 。 现在我想将date格式转换为“ TUE OCT 23 2012 1:05 AM ”。 做这个的最好方式是什么?
NSString *dateStr = @"Tue, 25 May 2010 12:53:58 +0000"; // Convert string to date object NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; [dateFormat setDateFormat:@"EE, d LLLL yyyy HH:mm:ss Z"]; NSDate *date = [dateFormat dateFromString:dateStr];
但首先
- 创build一个
NSDateFormatter
将datestring转换为一个NSDate
对象。 - 创build第二个
NSDateFormatter
(或更改第一个的格式string)将NSDate
转换回string。
这会有点帮助?
编辑
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]]; [dateFormatter setDateFormat:@"yyyy-MM-ddHH:mm:ss"]; NSDate *date = [dateFormatter dateFromString:@"2011-04-0600:28:27"];
使用这种方法。 将您的string传入并根据需要设置date格式。 你会得到你想要的date作为回报。
- (NSDate *) getDateFromString:(NSString *) inputDate { NSDateFormatter *dateForm = [[NSDateFormatter alloc] init]; [dateForm setDateFormat:@"yyyy-MM-dd"]; NSDate *dateSelected = [dateForm dateFromString:inputDate]; [dateForm release]; return dateSelected; }
希望对你有效。
================================================== =============
date格式选项如下:
现在你想要所有可以与NSDateFormatter一起使用的string格式。 这是那个
a:上午/下午
A:0〜86399999(毫秒)
c / cc:1〜7(星期几)
ccc:周日/周一/周二/周三/周四/周五/周六
cccc:周日/周一/周二/周三/周四/周五/周六
d:1〜31(0填充月份)
D:1〜366(0填充日)
e:1〜7(0填充星期几)
E〜EEE:周日/周一/周二/周三/周四/周五/周六
EEEE:周日/周一/周二/周三/周四/周五/周六
F:1〜5(0填充一周,一周的第一天=星期一)
g:朱利安日数(公元前4713年1月1日以来的天数)
G〜GGG:BC / AD(时代代号缩写)
GGGG:基督之前/ Anno Domini
h:1〜12(0填充小时(12小时))
H:0〜23(0填充时间(24小时))
k:1〜24(0填充时间(24小时)
K:0〜11(0填充时间(12小时))
L / LL:1〜12(0填充月份)
LLL:1月/ 2月/ 3月/ 4月/ 5月/ 6月/ 7月/ 8月/ 9月/ 10月/ 11月/ 12月
LLLL:一月/二月/三月/四月/五月/六月/七月/八月/九月/十月/十一月/十二月
m:0〜59(0填充分)
M / MM:1〜12(0填充月份)
MMM:1月/ 2月/ 3月/ 4月/ 5月/ 6月/ 7月/ 8月/ 9月/ 10月/ 11月/ 12月
MMMM:1月/ 2月/ 3月/ 4月/ 5月/ 6月/ 7月/ 8月/ 9月/ 10月/ 11月/ 12月
q / qq:1〜4(0填充季度)
qqq:Q1 / Q2 / Q3 / Q4
qqqq:第一季度/第二季度/第三季度/第四季度
Q / QQ:1〜4(0填充季)
QQQ:Q1 / Q2 / Q3 / Q4
QQQQ:第一季度/第二季度/第三季度/第四季度
s:0〜59(0填充秒)
S :(圆angular秒)
你:( 0填年)
v〜vvv :(普通GMT时区缩写)
vvvv :(普通GMT时区名称)
w:1〜53(0填充周,第1周=星期日,注:从去年最后一个星期日开始,第1周)
W:1〜5(0填充星期,本周第1天=星期天)
y / yyyy:(全年)
yy / yyy:(2位数年份)
Y / YYYY :(全年,从第一周的星期天开始)
YY / YYY:(2位数年份,从第一周的星期天开始)
z〜zzz :(特定的GMT时区缩写)
zzzz :(特定的GMT时区名称)
Z:+0000(RFC 822时区)
==========================================
设置你喜欢的格式
使用此波纹pipe方法与传递您的date…
-(NSString *)StringFromDate:(NSString *)DateLocal{ DateLocal = [self trimString:DateLocal]; NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; [dateFormatter setDateFormat:@"EEE, dd LLL yyyy hh:mm:ss Z"]; NSDate *date = [dateFormatter dateFromString: DateLocal]; NSString *tt = [dateFormatter stringFromDate:date]; NSDate *dateReturn = [dateFormatter dateFromString:tt]; NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; [dateFormat setDateFormat:@"EEE LLL dd yyyy hh:mm a"]; NSString *dateString = [dateFormat stringFromDate:dateReturn]; NSLog(@"Date is HERE =====>> %@",dateString); [dateFormat release]; return dateString; }