OC NSDate NSDateFormatter NSCalendar
2016-01-06 12:50
323 查看
#pragma mark - NSDate 日期时间类 NSDateFormatter NSCalendar 日期格式类 // 得到当前时间 NSDate *now = [NSDate date]; NSLog(@"%@",now); // 了解 // // 时区 // NSTimeZone *zone = [NSTimeZone systemTimeZone]; // NSLog(@"%@",zone); // // 计算时区和伦敦时区的时差 // NSInteger interval = [zone secondsFromGMTForDate:now]; // // 伦敦时间加上 // NSDate *locale = [now dateByAddingTimeInterval:interval]; // NSLog(@"%@",locale); // NSDate <--> NSString NSDateFormatter *f = [[NSDateFormatter alloc] init]; // 1.系统定义的格式 NSDateFormatter // [f setDateStyle:NSDateFormatterFullStyle];// 日期 // [f setTimeStyle:NSDateFormatterNoStyle];// 时间 // 2.自定义格式 //y 年 //M 月 //d 日 //H m s 时分秒 [f setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; // NSDate -> NSString NSString *dateStr = [f stringFromDate:now]; NSLog(@"%@",dateStr); // NSString -> NSDate NSDate *d2 = [f dateFromString:@"2020-10-1 12:12:13"]; NSLog(@"%@",d2); NSDate *tomorrow = [NSDate dateWithTimeIntervalSinceNow:24*60*60];// 得到明天的这个时候的时间 NSLog(@"%@",tomorrow); NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow:-24*60*60];// 得到昨天的这个时候的时间 NSLog(@"%@",yesterday); NSDate *d3 = [NSDate dateWithTimeInterval:8*60*60 sinceDate:now];// 过8小时后的时间 NSLog(@"%@",d3); // 时间比较 if([now isEqualToDate:tomorrow]) { NSLog(@"两个时间一样"); } if([now earlierDate:tomorrow]) { NSLog(@"现在比明天早"); } if([now laterDate:tomorrow]) { NSLog(@"现在比明天晚"); } // 计算时间的间隔 // NSDate *date1 = [NSDate date];// 时间1 // for(int i=0;i<100000000;i++) // { // float i= pow(M_PI, 5); // } // NSDate *date2 = [NSDate date];// 时间2 // NSTimeInterval second = [date2 timeIntervalSinceDate:date1]; // NSLog(@"这个循环总共运行了:%g秒",second); // NSCalendar 日历类 NSCalendar *calendar = [NSCalendar currentCalendar]; NSCalendarUnit type = NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitDay|NSCalendarUnitHour|NSCalendarUnitMinute; NSDateComponents *components = [calendar components:type fromDate:now]; NSLog(@"%i-%i-%i %i:%i",components.year,components.month,components.day,components.hour,components.minute);
#pragma mark -NSData NSString *str = @"abc123"; NSString *d = @"中文啊"; NSLog(@"%@",d); NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000); NSData *strData1 = [str dataUsingEncoding:NSUTF8StringEncoding];//NSString转NSData NSData *strData2 = [d dataUsingEncoding:NSUTF8StringEncoding]; NSData *strData3 = [d dataUsingEncoding:enc];//GB2312编码方式 Byte *byte = [strData1 bytes]; for (int i=0; i<strData1.length;i++) { printf("%i",byte[i]); } printf("\n"); #pragma mark NSNull(值) NSMutableArray *array = [[NSMutableArray alloc]init]; [array addObject:@15]; [array addObject:@16]; [array addObject:nil];//运行到这里会crash [array addObject:[NSNull null]];//表示空值,只是值为空,占个位子 [array addObject:@18];
相关文章推荐
- System类
- Laravel5.2快速入门
- 【NanoPi2试用体验】裸机第一步
- 【笔记】构造函数的私有、公有、特权、静态成员
- Java Script 第五节课 Java Script的强制转换。
- visual studio 调试时提示 已加载“C:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件。
- MySQL压测工具mysqlslap 讲解
- React-Native安装时的坑
- [1, Medium, C++] Two Sum
- Ubuntu15.10 安装JDK (jdk1.8.0_65)
- 【C语言提高37】结构体元素做函数参数与结构指针做函数参数
- PS图层中如何快速找到想要的图层
- 简要分析unity3d中剪不断理还乱的yield
- kindeditor上传文件在SpringMVC中servletFileUpload.parseRequest(request)解析为空获取不到数据问题 .
- Java Collections 中的通用实现
- jsp-------plastic
- Windows/Centos安装GO语言环境
- Redis学习笔记
- 欢迎使用CSDN-markdown编辑器
- Android进阶之性能优化