NSDate 的一些操作(比较、创建、在现有date加减一定时间等)

2023-10-05 04:40

本文主要是介绍NSDate 的一些操作(比较、创建、在现有date加减一定时间等),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


创建当前时间

NSDate *date = [NSDate date];

从现在开始的24小时

        NSTimeInterval a_day = 24*60*60;

        NSDate *tomorrow = [NSDate dateWithTimeIntervalSinceNow:a_day];

根据已有日期创建日期

        NSTimeInterval a_day = 24*60*60;NSDate *date = [NSDate date];NSDate *tomorrow = [date addTimeInterval: date];

日期比较

        BOOL isEqual = [date isEqualToDate:tomorrow];if(isEqual){NSLog(@"equal");}

//获取较早的日期

      NSDate *earlier_date = [tomorrow earlierDate:date];NSLog(@"earlierDate  = %@",earlierDate);

//较晚的日期

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

//两个日期之间相隔多少秒

        NSTimeInterval secondsInterval= [date timeIntervalSinceDate:tomorrow];NSLog(@"secondsInterval=  %lf",secondsInterval);

 //通过NSCalendar类来创建日期

        NSDateComponents *comps = [[NSDateComponentsalloc]init];[comps setMonth:01];[comps setDay:31];[comps setYear:2013];NSCalendar *calendar = [[NSCalendaralloc]initWithCalendarIdentifier:NSGregorianCalendar];NSDate *date = [calendar dateFromComponents:comps];

 //从已有日期获取日期

        unsigned units  = NSMonthCalendarUnit|NSDayCalendarUnit|NSYearCalendarUnit;NSDateComponents *_comps = [calendar components:units fromDate:date];NSInteger month = [_comps month];NSInteger year = [_comps year];NSInteger day = [_comps day];//NSDateFormatter实现日期的输出NSDateFormatter *formatter = [[NSDateFormatteralloc]init];[formatter setDateStyle:NSDateFormatterFullStyle];//直接输出的话是机器码//或者是手动设置样式[formatter setDateFormat:@"yyyy-mm-dd"];NSString *dateString = [formatter stringFromDate:date];NSLog(@"dateString = %@",dateString);NSLog(@"formater = %@",formatter);

//获取日期格式对象

- (NSDateFormatter *)getDateFormatter {if (dateFormatter == nil) {dateFormatter = [[NSDateFormatter alloc] init];[dateFormatter setDateStyle:NSDateFormatterMediumStyle];[dateFormatter setTimeStyle:NSDateFormatterNoStyle];}return dateFormatter;
}


这篇关于NSDate 的一些操作(比较、创建、在现有date加减一定时间等)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/3405

相关文章

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

Python中4大日志记录库比较的终极PK

《Python中4大日志记录库比较的终极PK》日志记录框架是一种工具,可帮助您标准化应用程序中的日志记录过程,:本文主要介绍Python中4大日志记录库比较的相关资料,文中通过代码介绍的非常详细,... 目录一、logging库1、优点2、缺点二、LogAid库三、Loguru库四、Structlogphp

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

Java利用Spire.Doc for Java实现在模板的基础上创建Word文档

《Java利用Spire.DocforJava实现在模板的基础上创建Word文档》在日常开发中,我们经常需要根据特定数据动态生成Word文档,本文将深入探讨如何利用强大的Java库Spire.Do... 目录1. Spire.Doc for Java 库介绍与安装特点与优势Maven 依赖配置2. 通过替换

MySQL基本表查询操作汇总之单表查询+多表操作大全

《MySQL基本表查询操作汇总之单表查询+多表操作大全》本文全面介绍了MySQL单表查询与多表操作的关键技术,包括基本语法、高级查询、表别名使用、多表连接及子查询等,并提供了丰富的实例,感兴趣的朋友跟... 目录一、单表查询整合(一)通用模版展示(二)举例说明(三)注意事项(四)Mapper简单举例简单查询

Nginx概念、架构、配置与虚拟主机实战操作指南

《Nginx概念、架构、配置与虚拟主机实战操作指南》Nginx是一个高性能的HTTP服务器、反向代理服务器、负载均衡器和IMAP/POP3/SMTP代理服务器,它支持高并发连接,资源占用低,功能全面且... 目录Nginx 深度解析:概念、架构、配置与虚拟主机实战一、Nginx 的概念二、Nginx 的特点

MySQL 数据库进阶之SQL 数据操作与子查询操作大全

《MySQL数据库进阶之SQL数据操作与子查询操作大全》本文详细介绍了SQL中的子查询、数据添加(INSERT)、数据修改(UPDATE)和数据删除(DELETE、TRUNCATE、DROP)操作... 目录一、子查询:嵌套在查询中的查询1.1 子查询的基本语法1.2 子查询的实战示例二、数据添加:INSE

使用Python在PDF中绘制多种图形的操作示例

《使用Python在PDF中绘制多种图形的操作示例》在进行PDF自动化处理时,人们往往首先想到的是文本生成、图片嵌入或表格绘制等常规需求,然而在许多实际业务场景中,能够在PDF中灵活绘制图形同样至关重... 目录1. 环境准备2. 创建 PDF 文档与页面3. 在 PDF 中绘制不同类型的图形python

java创建xls文件放到指定文件夹中实现方式

《java创建xls文件放到指定文件夹中实现方式》本文介绍了如何在Java中使用ApachePOI库创建和操作Excel文件,重点是如何创建一个XLS文件并将其放置到指定文件夹中... 目录Java创建XLS文件并放到指定文件夹中步骤一:引入依赖步骤二:创建XLS文件总结Java创建XLS文件并放到指定文件

Java 操作 MinIO详细步骤

《Java操作MinIO详细步骤》本文详细介绍了如何使用Java操作MinIO,涵盖了从环境准备、核心API详解到实战场景的全过程,文章从基础的桶和对象操作开始,到大文件分片上传、预签名URL生成... 目录Java 操作 MinIO 全指南:从 API 详解到实战场景引言:为什么选择 MinIO?一、环境