NSDate
//得到当前的日期
NSDate *date = [NSDate date];
NSLog(@"date:%@",date);
//得到(24 * 60 * 60)即24小时之前的日期,dateWithTimeIntervalSinceNow:
NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow: -(24 * 60 * 60)];
NSLog(@"yesterday:%@",yesterday);
NSDateFormatter *formatter =[[[NSDateFormatter alloc] init] autorelease];
NSDate *date = [NSDate date];
[formatter setTimeStyle:NSDateFormatterMediumStyle];
NSCalendar *calendar = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] autorelease];
NSDateComponents *comps = [[[NSDateComponents alloc] init] autorelease];
NSInteger unitFlags = NSYearCalendarUnit |
NSMonthCalendarUnit |
NSDayCalendarUnit |
NSWeekdayCalendarUnit |
NSHourCalendarUnit |
NSMinuteCalendarUnit |
NSSecondCalendarUnit;
//int week=0;
comps = [calendar components:unitFlags fromDate:date];
int week = [comps weekday];
int year=[comps year];
int month = [comps month];
int day = [comps day];
//[formatter setDateStyle:NSDateFormatterMediumStyle];
//This sets the label with the updated time.
int hour = [comps hour];
int min = [comps minute];
int sec = [comps second];
NSLog(@"week%d",week);
NSLog(@"year%d",year);
NSLog(@"month%d",month);
NSLog(@"day%d",day);
NSLog(@"hour%d",hour);
NSLog(@"min%d",min);
NSLog(@"sec%d",sec);
//得到毫秒
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];
//[dateFormatter setDateFormat:@"hh:mm:ss"]
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSLog(@"Date%@", [dateFormatter stringFromDate:[NSDate date]]);
[dateFormatter release];
==========================================
方法一
NSDate* toDate1 = [ [ NSDate alloc] initWithString:@"2520-9-26 17:10:00 +0600" ];
NSTimeInterval distance = [ toDate1 timeIntervalSinceNow ];
NSTimeInterval iDat = distance / ( 86400 ) ;
NSLog( @" From now to %@ diff: %f ", [toDate1 description ], iDat );
[ toDate1 release ];
方法二
NSDate* toDate = [ [ NSDate alloc] initWithString:@"2009-9-29 0:0:00 +0600" ];
NSDate* startDate = [ [ NSDate alloc] init ];
NSCalendar* chineseClendar = [ [ NSCalendar alloc ] initWithCalendarIdentifier:NSGregorianCalendar ];
NSUInteger unitFlags = NSHourCalendarUnit | NSMinuteCalendarUnit |
NSSecondCalendarUnit | NSDayCalendarUnit
| NSMonthCalendarUnit | NSYearCalendarUnit;
NSDateComponents *cps = [ chineseClendar components:unitFlags fromDate:startDate toDate:toDate options:0];
NSInteger diffHour = [ cps hour ];
NSInteger diffMin = [ cps minute ];
NSInteger diffSec = [ cps second ];
NSInteger diffDay = [ cps day ];
NSInteger diffMon = [ cps month ];
NSInteger diffYear = [ cps year ];
NSLog( @" From Now to %@, diff: Years: %d Months: %d, Days; %d, Hours: %d, Mins:%d, sec:%d",
[toDate description], diffYear, diffMon, diffDay, diffHour, diffMin,diffSec );
[ toDate release ];
[ startDate release ];
[ chineseClendar release ];
NSDate
//得到当前的日期 www.2cto.com
NSDate *date = [NSDate date];
NSLog(@"date:%@",date);
//得到(24 * 60 * 60)即24小时之前的日期,dateWithTimeIntervalSinceNow:
NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow: -(24 * 60 * 60)];
NSLog(@"yesterday:%@",yesterday);
NSDateFormatter *formatter =[[[NSDateFormatter alloc] init] autorelease];
NSDate *date = [NSDate date];
[formatter setTimeStyle:NSDateFormatterMediumStyle];
NSCalendar *calendar = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] autorelease];
NSDateComponents *comps = [[[NSDateComponents alloc] init] autorelease];
NSInteger unitFlags = NSYearCalendarUnit |
NSMonthCalendarUnit |
NSDayCalendarUnit |
NSWeekdayCalendarUnit |
NSHourCalendarUnit |
NSMinuteCalendarUnit |
NSSecondCalendarUnit;
//int week=0;
comps = [calendar components:unitFlags fromDate:date];
int week = [comps weekday];
int year=[comps year];
int month = [comps month];
int day = [comps day];
//[formatter setDateStyle:NSDateFormatterMediumStyle];
//This sets the label with the updated time.
int hour = [comps hour];
int min = [comps minute];
int sec = [comps second];
NSLog(@"week%d",week);
NSLog(@"year%d",year);
NSLog(@"month%d",month);
NSLog(@"day%d",day);
NSLog(@"hour%d",hour);
NSLog(@"min%d",min);
NSLog(@"sec%d",sec);
//得到毫秒
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];
//[dateFormatter setDateFormat:@"hh:mm:ss"]
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSLog(@"Date%@", [dateFormatter stringFromDate:[NSDate date]]);
[dateFormatter release];
==========================================
方法一
NSDate* toDate1 = [ [ NSDate alloc] initWithString:@"2520-9-26 17:10:00 +0600" ];
NSTimeInterval distance = [ toDate1 timeIntervalSinceNow ];
NSTimeInterval iDat = distance / ( 86400 ) ;
NSLog( @" From now to %@ diff: %f ", [toDate1 description ], iDat );
[ toDate1 release ];
方法二
NSDate* toDate = [ [ NSDate alloc] initWithString:@"2009-9-29 0:0:00 +0600" ];
NSDate* startDate = [ [ NSDate alloc] init ];
NSCalendar* chineseClendar = [ [ NSCalendar alloc ] initWithCalendarIdentifier:NSGregorianCalendar ];
NSUInteger unitFlags = NSHourCalendarUnit | NSMinuteCalendarUnit |
NSSecondCalendarUnit | NSDayCalendarUnit
| NSMonthCalendarUnit | NSYearCalendarUnit;
NSDateComponents *cps = [ chineseClendar components:unitFlags fromDate:startDate toDate:toDate options:0];
NSInteger diffHour = [ cps hour ];
NSInteger diffMin = [ cps minute ];
NSInteger diffSec = [ cps second ];
NSInteger diffDay = [ cps day ];
NSInteger diffMon = [ cps month ];
NSInteger diffYear = [ cps year ];
NSLog( @" From Now to %@, diff: Years: %d Months: %d, Days; %d, Hours: %d, Mins:%d, sec:%d",
[toDate description], diffYear, diffMon, diffDay, diffHour, diffMin,diffSec );
[ toDate release ];
[ startDate release ];
[ chineseClendar release ];
分享到:
相关推荐
- `NSDate`可以与其他`NSDate`对象配合使用`NSCalendar`来创建日期区间,如日、周、月。 ```objc NSCalendar *gregorianCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:...
任务它NSDate 创建和格式创建通过调用NSDateComponents构造一个具有当前日期的 NSDate 组件通过调用NSCalendar获取当前日历使用当前日历的方法dateFromComponents 将NSDate 组件更改为 NSDate 格式通过调用...
在iOS开发中,`NSDate`是苹果提供的一个核心类,用于表示特定的日期和时间。在实际应用中,我们经常需要将`NSDate`对象转换为用户友好的字符串格式,或者相反,将字符串解析成`NSDate`对象。这个过程通常涉及到`...
2. **扩展`NSDate`类别**:为了方便使用,库可能会扩展`NSDate`类别,添加新的方法,如`- (NSDate *)convertToLunarDate`,以便直接在现有的`NSDate`对象上调用。 3. **自定义`NSCalendar`子类**:有时,库可能会...
Swift-NSDate-Extensions 是 Swift NSDate 扩展,帮助开发。 标签:Swift
在Swift编程语言中,`NSDate`是用于表示时间点的核心类,它代表了自历元(参考日期)以来的特定瞬间。`NSDateFormatter`则用于将`NSDate`对象转换为可读的字符串格式,或者从用户输入的字符串解析出`NSDate`对象。`...
在iOS开发中,`NSDate`是苹果提供的一个核心类,用于表示日期和时间。它是一个不可变对象,意味着一旦创建,其值就不会改变。...在使用这些扩展时,确保充分测试,以确保它们在各种情况下的正确性。
在实际开发中,`NSDate`常常与`NSDateFormatter`、`NSTimeInterval`、`NSCalendar`和`NSTimeZone`一起使用,以满足各种日期和时间的处理需求。理解并熟练掌握这些知识点对于编写高效、功能完善的iOS和macOS应用至关...
为了给用户提供更加贴近生活的体验,开发者需要将公历日期(NSDate)转换为农历日期。本篇将详细介绍如何通过扩展NSDate分类来实现这个功能。 首先,我们需要了解iOS中处理日期的基本类——NSDate、NSCalendar、...
将时间戳转换为NSDate,可以使用`-[NSDate initWithTimeIntervalSince1970:]`方法。例如: ```objc NSTimeInterval timestamp = [NSDate timeIntervalSince1970]; NSDate *date = [NSDate ...
本文将详细介绍`NSDate`类的常用功能及其使用方法。 #### 二、创建和初始化`NSDate`对象 ##### 1. 创建`NSDate`实例 通过`NSDate`提供的类方法可以轻松地创建出不同类型的日期对象。 - `+ (id)date;`:创建一个...
为了简化这些操作,开发者常常会创建一个便利扩展,例如"swift-DateHelper-NSDate在Swift中的便利扩展"项目,它为`NSDate`(Objective-C的日期表示类)提供了额外的方法,以便在Swift中更方便地使用。 DateHelper...
`AFDateHelper`包含了判断两个日期是否相等、哪个日期更早或更晚的函数,如`isEqualToDate(date1: NSDate, date2: NSDate)`、`isBeforeDate(date: NSDate)`和`isAfterDate(date: NSDate)`。 此外,时间间隔的计算也...
在iOS开发中,`NSDate`类是Objective-C中用于处理日期和时间的核心组件。它代表一个绝对时间点,与特定时区无关...在iPhone应用中,正确地显示和处理日期是提升用户体验的重要环节,因此开发者需要熟悉这些工具的使用。
object-c基础语法NSDate, 适合初学者,主要学习NSDate的设置、获取当前时间、当前时间加减秒后的时间、日期比较、日期转换成NSString等
在Swift编程语言中,处理时间通常涉及到与网络通信和数据交换相关的任务,特别是在构建Web服务或客户端应用...在实际使用时,确保遵循Swift的命名规范和导入`Foundation`框架,以便使用`NSDate`和`DateFormatter`等类。
此外,我们还可以使用CATEGORY来扩展NSDate类,以便更方便地将毫秒时间戳转换回NSDate类型。下面是一个示例代码: ```objective-c + (NSDate *)getLocateTime:(unsigned int)timeStamp { double dTimeStamp = ...
- **日期格式化**:可能提供了更便捷的方式来将`NSDate`对象转换为字符串,或者将字符串解析为`NSDate`,这通常比使用`NSDateFormatter`更加简单。 - **时间比较**:可能有方法用于快速比较两个日期的先后顺序,比如...
NSDate扩充功能,可更容易操作NSDate ,它建立在SWIFT的顶部功能提供最好的体验和安全性。特征使用常用比较运算符比较日期: >, >=, <, <= 使用该自定义运算符获取日期之间的间隔>-< 使用算术运算符添加/...
一系列关于Date的小方法,包括NSDate和NSString的互相转换,大家自己看看每个方法的说明吧!