- 1、创建一个时间对象
- NSData * date = [NSDate date];//获取当前的时间
- //再获取的时间date减去24小时的时间(昨天的这个时候)
- NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow:-(24*60*60)];
- 2、将时间按一定的格式输出
- NSData * date = [NSDate date];
- NSDateFormatter * formatter = [[NSDateFormatter alloc]init];
- //指定输出的格式 这里格式必须是和上面定义字符串的格式相同,否则输出空
- [formatter setDateFormat:@"yyyy-MM-dd"];
- NSString *timeString= [formatter stringFromDate:data];
- /*
- NSDateFormatter 的一些格式介绍
- [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; //这里要注意的是formatter的格式,如果是小写的"hh",那么时间将会跟着系统设置变成12小时或者24小时制。大写的"HH",则强制为24小时制。
- [dateFormatter setDateFormat:@"yyyy年MM月dd日#EEEE"];EEEE为星期几,EEE为周几
- [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
- [dateFormatter setDateFormat:@"yyyy年MMMMd日"];//MMMM 为xx月,一个d可以省去01日前的0
- */
- 3、 将一时间字符串换成<span style="font-family: Arial, Helvetica, sans-serif;">Date对象,和把NData转换成string对象</span><p class="p2"><span style="white-space:pre"> </span></p><p class="p2"><span style="white-space:pre"> </span>NSDateFormatter<span class="s1">配合</span>NSDate<span class="s1">与</span>NSString<span class="s1">之间的转化</span> NSDateFormatter<span class="s1">有下面</span><span class="s2">2</span><span class="s1">个方法:</span></p><p class="p2"><span style="white-space:pre"> </span>- (NSString *)stringFromDate:(NSDate *)date;<span class="s3">//NSDate</span><span class="s4">转</span><span class="s3">NSString</span></p><p class="p2"><span style="white-space:pre"> </span>- (NSDate *)dateFromString:(NSString *)string;<span class="s3">//NSString</span><span class="s4">转</span><span class="s3">NSDate</span></p><p class="p1">
- </p>
- NSString *datestring = [NSString stringWithFormat:@"1999-09-03"];
- //想要设置自己想要的格式,可以用nsdateformatter这个类,这里是初始化
- NSDateFormatter * formatter = [[NSDateFormatter alloc]init];
- //指定输出的格式 这里格式必须是和上面定义字符串的格式相同,否则输出空
- [formatter setDateFormat:@"yyyy-MM-dd"];
- NSDate *newdate=[formatter dateFromString:datestring];
- 把字符串的时间转换成Date对象,用dateFromString方法
- NSDate * newdate = [formatter dateFromString:datestring];
- // 把时间转换成字符串,把Date对象转换成String对象 用stringFromDate方法
- NSString * datestring2 = [formatter stringFromDate:newdate];
- 4、将本地时间转换成指定时区的时间 <pre name="code" class="cpp"><p class="p2"> NSDateFormatter *formatter<span> </span>= [[NSDateFormatter alloc] init];</p><p class="p2"> [formatter<span> </span>setDateFormat:<span class="s1">@"yyyy-MM-dd hh:mm:ss"</span>];</p><p class="p2"> <span class="s2">NSTimeZone</span>* timeZone = [<span class="s2">NSTimeZone</span> <span class="s3">timeZoneWithName</span>:<span class="s1">@"Asia/Shanghai"</span>]; <span class="s4">//</span><span class="s5">东八区时间</span></p><p class="p2"> [formatter setTimeZone:timeZone];</p><p class="p2"> <span class="s2">NSString</span> *loctime = [formatter stringFromDate:date];</p><p class="p2"> [formatter release];</p><p class="p3">
- </p><p class="p1"><span class="s6"> </span>现在<span class="s6">loctime</span>就是指定时区的时间字符串了</p><p class="p1">
- </p><p class="p1"><span class="s7">5</span>、将时间戳<span class="s6"> </span>转变为标准时间</p><p class="p2"> NSTimeInterval time=[timestamp doubleValue]; <span class="s4">// timetamp</span><span class="s5">为</span><span class="s4"> “</span><span class="s5">时间戳</span><span class="s4">”</span><span class="s5">字符串</span></p><p class="p2"> <span class="s2">NSDate</span> *detaildate=[NSDate dateWithTimeIntervalSince1970:time];</p><p class="p2"> NSLog(<span class="s1">@"date:%@"</span>,[detaildate description]);</p><p class="p3">
- </p><p class="p4"><span class="s8"> </span>NSDateFormatter<span class="s8"> *dateFormatter = [[</span>NSDateFormatter<span class="s8"> </span><span class="s3">alloc</span><span class="s8">] </span><span class="s3">init</span><span class="s8">];</span></p><p class="p2"> [dateFormatter setDateFormat:<span class="s1">@"yyyy-MM-dd HH:mm:ss"</span>];</p><p class="p2"> [dateFormatter setLocale:[NSLocale currentLocale]];</p><p class="p2"> <span class="s2">NSString</span> *timeString = [<span class="s9">dateFormatter</span> <span class="s3">stringFromDate</span>:<span class="s9">detaildate</span>];</p></pre>
- <pre></pre>
- <pre></pre>