Objective-C 处理日期方法—NSDate
来源:互联网 发布:ca724 知乎 编辑:程序博客网 时间:2024/06/01 16:46
这里是关于处理日期的常用一些方法:
//1. 创建日期对象 获得的永远是0时区时间,如果要是东八区时间,就加8个小时
NSDate *dateNow = [NSDatedate];
//2. 日期格式化类
NSDateFormatter *formatter = [[NSDateFormatteralloc]init];
//3. 日期格式(固定写法)
formatter.dateFormat =@"yyy-MM-dd HH:mm:ss";
//4. 将日期格式化成字符串对象
NSString *str = [formatter stringFromDate:dateNow];
NSLog(@"%@", str);
//5. 明天
NSDate *date1 = [dateNow dateByAddingTimeInterval:24*60*60];
NSLog(@"%@", date1);
//6. 昨天
NSDate *date2 = [dateNow dateByAddingTimeInterval:-24*60*60];
NSLog(@"%@", date2);
//NSDateFormatter:这个类是用来处理日期与字符串之间转换的方法
//7.获取并设置时间时区,获取系统时区
NSTimeZone *currentTimezone = [NSTimeZonesystemTimeZone];
[formattersetTimeZone:currentTimezone];
[formatter setDateFormat:@"yyy-MM-dd HH:mm:ss EEEE"];
NSLog(@"%@", [formatterstringFromDate:dateNow]);
//8. ----------------------------计算程序所用时间--------------------------------------------
NSMutableArray *array = [NSMutableArrayarray];
for (int i =0; i < 10000; i++) {
int r = arc4random();
[arrayaddObject:[NSStringstringWithFormat:@"%d", r]];
}
NSDate *startTime = [NSDatedate];//记录开始时间
//系统所写排序
[arraysortUsingSelector:@selector(compare:)];
//手写冒泡
// for (int i = 0; i < [array count] - 1; i++) {
// for (int j = 0; j < [array count] - 1 - i; j++) {
// if ([[array objectAtIndex:j] compare:[array objectAtIndex:j + 1]] == 1) {
// [array exchangeObjectAtIndex:j withObjectAtIndex:j + 1];
// }
// }
// }
NSDate *endTime = [NSDatedate];//记录结束时间
NSTimeInterval usedTime = [endTime timeIntervalSinceDate:startTime];//计算时间间隔
NSLog(@"所用时间:%f秒", usedTime);
//---------------------------------------------------------------------------------
//9. 距离现在的某段时间后
NSDate *dateAfterNow = [dateNow dateByAddingTimeInterval:10]; //在此时的过10分钟
NSLog(@"%@", dateAfterNow);
//计算当前时间和一个固定时间的差值,如果差值在60秒内,输出“刚刚”,如果在60秒外3600秒内,输出“xx分钟前”,如果3600秒外,3600*24秒内,输出“xx小时前”(随机获得0-255的数)
//10. 随机创建一个date对象
NSDate *randomDate = [NSDatedateWithTimeIntervalSinceNow:arc4random()%(3600*24)];
//11. 获取randomDate和当前时间的时间差
NSTimeInterval time = [randomDate timeIntervalSinceNow];
NSLog(@"%f",time);
if(time <60){
NSLog(@"刚刚");
}elseif (time<3600){
int minute = time/60;
NSLog(@"%d分钟前",minute);
}elseif (time<3600*24){
int hour = time/3600;
NSLog(@"%d小时前",hour);
}
//12. 将日期转换成字符串再输出
//设置自定义日期格式
[formattersetDateFormat:@"yy/MM/dd HH:mm:ss"];
[formatter setDateFormat:@"yy yyy yyyy mm MM dd DD HH hh SS ss"];
//[formatter setDateFormat:@"yy/MM/dd HH:mm:ss"];
NSString *dateString = [formatter stringFromDate:dateNow];
NSLog(@"%@",dateString);
//日期格式如下
// y 年 Year 1996; 96
// M 年中的月份 Month July; Jul; 07
// w 年中的周数 Number 27
// W 月份中的周数 Number 2
// D 年中的天数 Number 189
// d 月份中的天数 Number 10
// F 月份中的星期 Number 2
// E 星期中的天数 Text Tuesday; Tue
// a Am/pm 标记 Text PM
// H 一天中的小时数(0-23) Number 0
// k 一天中的小时数(1-24) Number 24
// K am/pm 中的小时数(0-11) Number 0
// h am/pm 中的小时数(1-12) Number 12
// m 小时中的分钟数 Number 30
// s 分钟中的秒数 Number 55
// S 毫秒数 Number 978
// z 时区 General time zone Pacific Standard Time; PST; GMT-08:00
// Z 时区 RFC 822 time zone -0800
- Objective-C 处理日期方法—NSDate
- Objective-C语言——NSDate日期
- Objective-C的日期类NSDate
- Objective-C(十四、NSDate类及日期格式化类NSDateFormatter)——iOS开发基础
- Objective-c NSDate 取时间,日期,星期,毫秒等
- Objective-c NSDate 取时间,日期,星期,毫秒等
- Objective-c NSDate 取时间,日期,星期,毫秒等
- Objective-c NSDate 取时间,日期,星期,毫秒等
- Objective-c NSDate 取时间,日期,星期等
- Objective-C基础——NSDate
- objective-c NSDate
- Objective-C----NSDate、NSDateFormatter
- Objective-C 【NSDate】
- iphone-NSDate日期处理
- NSDate 日期,时间处理
- Objective-C基础之NSDate的常用方法
- xcode 中nsdate 日期的一些处理方法
- OC中的关于日期处理方法应用NSDate、NSDateFormatter
- 解决iOS7下tableview分割线左边短了一点
- 使用SWFUpload上传文件
- Netty3 源码分析 - ChannelStateEvent
- Http 下载文件,指定下载位置
- hdu2039
- Objective-C 处理日期方法—NSDate
- 剑指offer chapter 3
- Remove Element
- ZOJ 3814 Sawtooth Puzzle(牡丹江网络赛F题)
- rpm 安装包网址
- JavaSe基础XX18——IO流_6
- DOM分类和级别概述
- Compiler Error Message: CS0016: Could not write to output file 'c:\Windows\Microsoft.NET\Framework64
- hive中RegexSerDe的使用