OC系列foundation Kit基础-NSDate

一.获取当前时间

1.1创建一个日期对象

        NSDate *date = [NSDate date];
        NSLog(@"%@",date);

  输出结果:

2016-07-01 17:31:02.410 OCString[907:402963] 2016-07-01 09:31:02 +0000    //因为时区不一样,需要格式化为本地时间
Program ended with exit code: 0

1.2将时间格式化为本地时间

        //日前格式化
        NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
        //设置日期格式化对象的两个属性
        formatter.dateStyle = NSDateFormatterShortStyle;
        formatter.timeStyle = NSDateFormatterShortStyle;
        NSString *result = [formatter stringFromDate:date];
        NSLog(@"%@",result);

  输出结果:

2016-07-01 17:36:20.719 OCString[917:424185] 16/7/1 17:36
Program ended with exit code: 0

二.获取当月一共有多少天

2.1创建一个日期对象

NSDate *date = [NSDate date];

2.2获取系统提供的日历对象

        //获取系统提供的日历对象
        NSCalendar *calender = [NSCalendar currentCalendar];

2.3获取当月第一天和最后一天

        NSRange range = [calender rangeOfUnit:NSCalendarUnitDay inUnit:NSCalendarUnitMonth forDate:date];
        NSLog(@"%@",NSStringFromRange(range));

  输出结果:

2016-07-01 17:46:21.526 OCString[947:466115] {1, 31}
Program ended with exit code: 0

三.获取当年一共有多少天

同上二中的方法

四.获取当月第一天和最后一天是星期几

4.1获取当月第一天是星期几

NSDate *date = [NSDate date];

4.2获取系统提供的日历对象

  NSCalendar *calender = [NSCalendar currentCalendar]; 

4.3获取当月第一天和最后一天

NSRange range = [calender rangeOfUnit:NSCalendarUnitDay inUnit:NSCalendarUnitMonth forDate:date];

4.4获取当天时间的日期值

NSDateComponents *todayComp = [calender components:NSCalendarUnitDay | NSCalendarUnitMonth | NSCalendarUnitYear fromDate:date];

4.5计算第一天的日期

        NSDateComponents *startComp = [todayComp copy];
        startComp.day = range.location; 

4.6计算最后一天的日期

        NSDateComponents *endComp = [todayComp copy];
        endComp.day = range.length;

4.7日期转为时间对象

        NSDate *startDate = [calender dateFromComponents:startComp];
        NSDate *endDate = [calender dateFromComponents:endComp];

4.8计算星期几

        NSInteger start_week = [calender ordinalityOfUnit:NSCalendarUnitWeekday inUnit:NSCalendarUnitWeekOfYear forDate:startDate];
        NSInteger end_week = [calender ordinalityOfUnit:NSCalendarUnitWeekday inUnit:NSCalendarUnitWeekOfYear forDate:endDate];
时间: 2024-08-25 19:41:47

OC系列foundation Kit基础-NSDate的相关文章

OC系列foundation Kit基础-NSMutableString

一可变字符串创建 二可变字符串特性 1.增 2.删 3.查 4.改

OC系列foundation Kit基础-NSString

一NSString常见创建方法 二两个字符串比较 1.两个字符串是否相等 2.比较两个字符串 3.字符串截取操作 一个字符串中是否含有另一个字符串

OC系列foundation Kit基础-NSdictionary

一字典创建

OC系列foundation Kit基础-NSMutableArray

一可变数组创建 二可变数组操作 1.添加元素 2.删除元素 3.置换元素 三.将字符串拆分成数组

OC系列foundation Kit基础-NSArray

一数组创建 arr3通过数组创建数组,copyItems为yes,其实是创建数组后再拷贝地址,也就是两份地址,也就是说对象会出现两次,这里出现了一个错误 person对象需要实现NSCoping protocol,并且override copyWithZone metohd: 二数组遍历

OC基础 NSDate

OC基础  NSDate #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { NSDate *date = [NSDate date]; NSLog(@"date = %@",date); //距离现在时间多少s之后的时间 NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:60];

Foundation Kit常用类介绍

Foundation Kit是OS X类库和IOS类库共享的基础类库,里面提供了很多封装类,具体可以见https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/ObjC_classic/,下面介绍一些常用类. 1.字符串类:NSString和NSMutableString. NSMutableString继承于NSString,两者的区别是:NSMutableString是可变的,而NSStr

黑马程序员学习笔记-OC之foundation框架

黑马程序员学习笔记-OC之foundation框架 1.简介:foundation框架是其它所有ios框架的基础,包含了很多常用类型,结构体.枚举.类等. 2. 结构体:NSRange表示范围的结构体. NSPoint/CGPoint表示坐标点的结构体 NSSize/CGSize表示宽高的结构体 NSRect/CGRect表示坐标点+宽高的结构体 3. 类字符串:NSString  字符串类 NSMUtableString  易变字符串类 NSArray         数组类 NSMUtabl

IOS开发系列&mdash;Objective-C之基础概览

概览 前面我们已经用了几章内容进行C语言介绍,当然要通过几篇文章完整的介绍C语言的知识是不太现实的,例如C语言的文件操作.内存申请等我们都没有重点介绍,当然核心知识点基本都已经提到了,后面有时间我们会继续扩充.今天我们正式开始学习Objective-C,以后简称"ObjC",ObjC是在C语言的基础上加上了一层面向对象的特性,它完全兼容C语言,甚至可以混写C++.它是Mac OS X和IOS的主要开发语言,从IOS发布之后可以说ObjC的地位呈直线上升趋势,当前ObjC已经是仅次于C语