foundation框架基础 NSDate-日期
来源:互联网 发布:c语言中eof怎么输入 编辑:程序博客网 时间:2024/05/22 05:06
#import<Foundation/Foundation.h>
//NSCalendar 日历,主要用于日期的计算
intmain(intargc, const char * argv[]) {
@autoreleasepool {
NSCalendar *calendar = [NSCalendarcurrentCalendar];
NSString *ds =@"2015-1-1 10:10:10";
NSString *ds1 =@"2015-4-1 10:10:10";
NSDateFormatter *fmt = [[NSDateFormatteralloc] init];
intmain(intargc, const char * argv[]) {
@autoreleasepool {
NSCalendar *calendar = [NSCalendarcurrentCalendar];
NSString *ds =@"2015-1-1 10:10:10";
NSString *ds1 =@"2015-4-1 10:10:10";
NSDateFormatter *fmt = [[NSDateFormatteralloc] init];
fmt.dateFormat =@"yyyy-MM-dd HH:mm:ss";
// 将字符转日期
NSDate *d1 = [fmtdateFromString:ds];
NSDate *d1 = [fmtdateFromString:ds];
NSDate *d2 = [fmt dateFromString:ds1];
// 计算两个日期的差值
NSDateComponents *cmps = [calendarcomponents:NSCalendarUnitMonthfromDate:d1toDate:d2options:NSCalendarMatchStrictly];
NSLog(@"%zd",cmps.month);
// NSDateComponents 转 NSDate
cmps.year =2014;
cmps.month= 2;
cmps.day= 30;
cmps.hour= 10;
cmps.minute= 10;
cmps.second= 120;
NSDate *date = [calendardateFromComponents:cmps];
NSLog(@"%@",date);
// 从当前日期加上一年
NSDateComponents *cm = [[NSDateComponentsalloc] init];
cm.year= 1;
NSDate *date2 = [calendardateByAddingComponents:cmtoDate:dateoptions:NSCalendarMatchStrictly];
NSLog(@"%@",date2);
}
return 0;
}
voidtest3()
{
NSCalendar *calendar = [NSCalendarcurrentCalendar];
// 获取日期每一个部分
NSDate *date = [NSDatedate];
NSDateComponents *cmps = [calendarcomponents:NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitDay|NSCalendarUnitHour|NSCalendarUnitMinute|NSCalendarUnitSecondfromDate:date];
long year = cmps.year;
NSLog(@"%zd,%zd,%zd,%zd,%zd,%zd",year,cmps.month,cmps.day,cmps.hour,cmps.minute,cmps.second);
}
voidtest2()
{
NSString *ds =@"2015-1-1 10:10:10";
NSString *ds1 =@"2015-4-1 10:10:10";
NSDateFormatter *fmt = [[NSDateFormatteralloc] init];
NSDateComponents *cmps = [calendarcomponents:NSCalendarUnitMonthfromDate:d1toDate:d2options:NSCalendarMatchStrictly];
NSLog(@"%zd",cmps.month);
// NSDateComponents 转 NSDate
cmps.year =2014;
cmps.month= 2;
cmps.day= 30;
cmps.hour= 10;
cmps.minute= 10;
cmps.second= 120;
NSDate *date = [calendardateFromComponents:cmps];
NSLog(@"%@",date);
// 从当前日期加上一年
NSDateComponents *cm = [[NSDateComponentsalloc] init];
cm.year= 1;
NSDate *date2 = [calendardateByAddingComponents:cmtoDate:dateoptions:NSCalendarMatchStrictly];
NSLog(@"%@",date2);
}
return 0;
}
voidtest3()
{
NSCalendar *calendar = [NSCalendarcurrentCalendar];
// 获取日期每一个部分
NSDate *date = [NSDatedate];
NSDateComponents *cmps = [calendarcomponents:NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitDay|NSCalendarUnitHour|NSCalendarUnitMinute|NSCalendarUnitSecondfromDate:date];
long year = cmps.year;
NSLog(@"%zd,%zd,%zd,%zd,%zd,%zd",year,cmps.month,cmps.day,cmps.hour,cmps.minute,cmps.second);
}
voidtest2()
{
NSString *ds =@"2015-1-1 10:10:10";
NSString *ds1 =@"2015-4-1 10:10:10";
NSDateFormatter *fmt = [[NSDateFormatteralloc] init];
fmt.dateFormat =@"yyyy-MM-dd HH:mm:ss";
// 将字符转日期
NSDate *d1 = [fmtdateFromString:ds];
NSDate *d2 = [fmtdateFromString:ds1];
BOOL isSame = [d1isEqualToDate:d2];
if (!isSame) {
NSLog(@"日期不同");
NSDate *d1 = [fmtdateFromString:ds];
NSDate *d2 = [fmtdateFromString:ds1];
BOOL isSame = [d1isEqualToDate:d2];
if (!isSame) {
NSLog(@"日期不同");
}
// 比较两个日期
NSComparisonResult rs = [d1 compare:d2];
if(rs ==NSOrderedSame){
NSLog(@"相同");
}elseif(rs ==NSOrderedAscending){
NSLog(@"d1 < d2");
}else{
NSLog(@"d1 > d2");
}
// 获取两个日期较早de一个
NSDate *earlierDate = [d1earlierDate:d2 ];
NSLog(@"%@",earlierDate);
// 获取两个日期较晚de一个
NSDate *laterDate = [d1laterDate:d2];
NSLog(@"%@",laterDate);
int second =60 * 60 * 24;
// 从当前时间往后多少秒的时间
NSDate *tm = [NSDatedateWithTimeIntervalSinceNow:second];
NSLog(@"%@",tm);
}
//重点
voidtest()
{
// 创建NSDate
// 创建一个代表当前时间的对象
NSDate *date = [NSDatedate];
NSLog(@"%@",date);//输出的时间是格林威治标准时间 本初子午线穿过哪里
// 格式化
// 创建日期格式化对象
NSDateFormatter *fmt = [[NSDateFormatteralloc] init];
if(rs ==NSOrderedSame){
NSLog(@"相同");
}elseif(rs ==NSOrderedAscending){
NSLog(@"d1 < d2");
}else{
NSLog(@"d1 > d2");
}
// 获取两个日期较早de一个
NSDate *earlierDate = [d1earlierDate:d2 ];
NSLog(@"%@",earlierDate);
// 获取两个日期较晚de一个
NSDate *laterDate = [d1laterDate:d2];
NSLog(@"%@",laterDate);
int second =60 * 60 * 24;
// 从当前时间往后多少秒的时间
NSDate *tm = [NSDatedateWithTimeIntervalSinceNow:second];
NSLog(@"%@",tm);
}
//重点
voidtest()
{
// 创建NSDate
// 创建一个代表当前时间的对象
NSDate *date = [NSDatedate];
NSLog(@"%@",date);//输出的时间是格林威治标准时间 本初子午线穿过哪里
// 格式化
// 创建日期格式化对象
NSDateFormatter *fmt = [[NSDateFormatteralloc] init];
fmt.dateFormat =@"yyyy-MM-dd HH:mm:ss";
/*
yyyy 年
MM 月
dd 日
HH 24小时
hh 12小时
mm 分钟
ss 秒
Z 时区
yyyy 年
MM 月
dd 日
HH 24小时
hh 12小时
mm 分钟
ss 秒
Z 时区
*/
// 日期转格式化字符串
NSString *dateStr = [fmtstringFromDate:date];
NSLog(@"%@",dateStr);
NSString *dateStr = [fmtstringFromDate:date];
NSLog(@"%@",dateStr);
NSString *ds = @"2015-1-1 10:10:10";
// 字符转日期
NSDate *d1 = [fmtdateFromString:ds];
NSDate *d1 = [fmtdateFromString:ds];
NSLog(@"%@",d1);
}
0 0
- foundation框架基础 NSDate-日期
- Foundation Framework 日期 NSDate
- Foundation框架--- NSDate、NSNumber
- Foundation框架 - NSDate类
- Foundation框架-06 日期类NSDate和日历类NSCalendar
- 17,Objective-C Foundation框架中的NSDate
- Foundation框架——NSDate初级
- Foundation框架—NSNumber、NSValue、NSDate
- iOS-Foundation框架(NSDate.h解读)
- Foundation框架NSNumber、NSValue和NSDate
- foundation-NSDate
- Foundation框架基础
- Foundation基础框架2
- cocoa foundation框架基础
- cocoa foundation框架基础
- Foundation框架基础 NSArray
- Foundation框架基础 NSString
- Foundation框架基础 NSSet
- java虚拟机学习
- Get started with lxc.
- Foundation框架基础 常用的结构体
- 程序编译运行时头文件或动态链接库的查找
- java编程中引用数据类型就是类、接口、数组,怎么理解理引用的格式和意义了????
- foundation框架基础 NSDate-日期
- 职业生涯规划
- hdu1754 I Hate It(线段树)
- POJ 2299 Ultra-QuickSort (树状数组)
- phpmyadmin使用load语句导入.dat数据中文乱码问题解决
- Foundation框架基础 NSData-数据
- 什么是仿射变换以及仿射变换矩阵?
- HDOJ 1231 ---最大连续字段和
- I2C学习之 STC15F204EA---GPIO端口模拟--简单控制PCF8574AT