`
119568242
  • 浏览: 426995 次
  • 性别: Icon_minigender_1
  • 来自: 深圳/湛江
社区版块
存档分类
最新评论

[转]Objective-c NSDate 取时间,日期,星期,毫秒等

    博客分类:
  • ios
 
阅读更多

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

  - (NSString *)description;

    YYYY-MM-DD HH:MM:SS ±HHMM的格式表示时间。

    其中 "±HHMM" 表示与GMT的存在多少小时多少分钟的时区差异。比如,若时区设置在北京,则 "±HHMM" 显示为 "+0800"

 

将结果 进行 subString操作取得想要的数据。

分享到:
评论

相关推荐

    Objective-C

    Objective-C的Foundation框架提供了大量基础类,如`NSArray`、`NSDictionary`、`NSDate`等,它们提供了丰富的数据结构和系统服务。同时,Cocoa和Cocoa Touch是基于Objective-C的框架,分别用于macOS和iOS应用开发,...

    Learn Objective-C 中文版 v2

    - **NSDate**:日期和时间的处理。 5. **Cocoa和Cocoa Touch**: - **Cocoa**:Mac OS X的应用程序开发框架,包含UIKit的Mac版本AppKit。 - **Cocoa Touch**:iOS应用程序开发的核心框架,包含UI组件和系统服务...

    swift-DateTools-在Objective-C中的轻松处理日期和时间

    在iOS和macOS的开发过程中,日期和时间的处理是一项常见的任务,而Swift中的DateTools库为开发者提供了强大的工具,使得在Objective-C中处理日期和时间变得更为简单。DateTools是Matthew York开发的一个开源库,它...

    Objective-C经典入门源代码

    Objective-C是在C语言的基础上扩展的,因此,它继承了C的语法特性,如变量声明、控制结构(如if-else、for、while)、函数等。同时,它引入了消息传递机制,这是面向对象编程的核心。在Objective-C中,对象通过发送...

    Using Swift with Cocoa and Objective-C中文

    Swift支持Foundation框架中的许多类型,如`Date`对应于Objective-C中的`NSDate`。 **Foundation函数** Swift可以调用Foundation框架中的函数,如`NSKeyedArchiver.archiveRootObject(_:toFile:)`。 **Core ...

    [Objective-c程序设计].杨正洪等.扫描版

    《Objective-C程序设计》(作者杨正洪、郑齐心、李建国)通过大量的实例系统地介绍了Objective-C语言的基本概念、语法规则、框架、类库及开发环境。读者在阅读本书后,可以掌握Objective-C语言的基本内容,并进行...

    Objective-C入门指南

    6. `NSDate`:表示日期和时间的对象。 学习Objective-C,不仅需要理解这些基础知识,还要通过实践编写代码来加深理解。Objective-C入门指南.pdf文件将提供更详细的讲解和示例,帮助你快速上手Objective-C编程。

    objective-c教程

    同时,Foundation框架还涉及日期对象(NSDate)、装箱和拆箱(NSNumber)、以及归档和解档操作。 文件操作也是Objective-C编程中不可或缺的一部分。这包括使用NSFileManager进行文件和文件夹的创建、删除、改变和...

    The Objective-C Programming Language

    Objective-C是一种通用、面向对象的编程语言,它是在C语言的基础上扩展而成的。Objective-C是苹果公司在开发macOS和iOS操作系统及其应用程序时的主要编程语言之一。Objective-C的出现极大地提高了程序设计的灵活性和...

    Programming in Objective-C 4th Edition

    - **日期与时间**:NSDate 类的使用方法。 - **文件系统访问**:如何读写文件及目录操作。 ### 高级主题探讨 除了基础知识外,本书还将涉及一些高级话题,帮助读者进一步提升技能: - **类别与协议**:如何扩展已...

    Objective-C中文教程

    - **学习前提**: 对于已经熟悉面向对象编程概念和C语言基础的学习者来说,学习Objective-C将更为容易。 #### 二、Objective-C基本语法 - **方法调用**: - 基本语法: `[object method]`。 - 参数传递: `[object ...

    Objective-C2.0程序设计 答案

    Objective-C 2.0是Apple开发的一种面向对象的编程语言,它是C语言的超集,主要用于iOS和Mac OS X应用程序的开发。Objective-C 2.0在Objective-C的基础上添加了一些新特性,使得编程更加简洁高效。以下是Objective-C ...

    千锋3G学院-IPHONE_iOS系列课程之Objective-C【分辨率1024*768】

    Objective-C起源于C语言,它扩展了C的语法,引入了Smalltalk式的消息传递机制,使得面向对象编程更为灵活。在iOS开发中,Objective-C是Foundation框架和AppKit框架(macOS)或UIKit框架(iOS)的基础,提供了大量...

    swift-DateHelper-NSDate在Swift中的便利扩展

    为了简化这些操作,开发者常常会创建一个便利扩展,例如"swift-DateHelper-NSDate在Swift中的便利扩展"项目,它为`NSDate`(Objective-C的日期表示类)提供了额外的方法,以便在Swift中更方便地使用。 DateHelper...

    iOS将时间NSDate转化为毫秒时间戳的方法示例

    iOS将时间NSDate转化为毫秒时间戳的方法示例 iOS开发中,日期和时间戳的转换是一个常见的问题。下面我们将介绍如何将NSDate类型的日期转换为毫秒时间戳,并将毫秒时间戳转换回NSDate类型。 首先,我们需要理解为...

    Objective-C词典对象的使用总结

    此外,NSDictionary中的数据成员可以是任意的Objective-C对象,但实际应用中通常是属性列表对象,如NSData、NSDate、NSNumber、NSString、NSArray或NSDictionary。当字典只包含这类对象时,可以将字典的内容持久化到...

    IOS开发系列—Objective-C之Foundation框架 - KenshinCui - 博客园.pdf

    Foundation框架提供了`NSDate`类来处理日期和时间相关的功能。通过`NSDateFormatter`可以方便地格式化日期,实现日期的读取和显示。 #### 字符串 字符串处理在编程中占据着重要的地位。Foundation框架中的`...

Global site tag (gtag.js) - Google Analytics