文档章节

NSDate 使用

0_0Loong
 0_0Loong
发布于 2015/06/05 07:33
字数 838
阅读 4
收藏 0
点赞 0
评论 0

取当前时间的秒数

NSTimeInterval time = [[NSDate date] timeIntervalSince1970];
long long int date = (long long int)time;
NSLog(@”date\n%d”, date); //1295322949
//把秒数转化成yyyy-MM-dd hh:mm:ss格式
NSDate *dd = [NSDate dateWithTimeIntervalSince1970:date];
NSLog(@”d:%@”,dd); //2011-01-18 03:55:49 +0000

//给一个时间秒数,取出对应的时间
NSString *s = @”1295355600000″; //对应21:00
NSDate *d = [NSDate dateWithTimeIntervalSince1970:[s doubleValue]/1000];
NSLog(@”dddd:%@”,d); //2011-01-18 13:00:00 +0000
NSDateFormatter *formatter1 = [[NSDateFormatter alloc] init];
[formatter1 setDateFormat:@"HH:mm"];
NSString *showtimeNew = [formatter1 stringFromDate:d];
NSLog(@”showtimeNew:%@”,showtimeNew); //21:00 比d的时间 +8小时
[formatter1 release];


1. 创建或初始化可用以下方法
用于创建NSDate实例的类方法有
+ (id)date;
返回当前时间
+ (id)dateWithTimeIntervalSinceNow:(NSTimeInterval)secs;
返回以当前时间为基准,然后过了secs秒的时间
+ (id)dateWithTimeIntervalSinceReferenceDate:(NSTimeInterval)secs;
返回以2001/01/01 GMT为基准,然后过了secs秒的时间
+ (id)dateWithTimeIntervalSince1970:(NSTimeInterval)secs;
返回以1970/01/01 GMT为基准,然后过了secs秒的时间
+ (id)distantFuture;
返回很多年以后的未来的某一天。(比如你需要一个比现在(Now)晚(大)很长时间的时间值,则可以调用该方法。测试返回了4000/12/31 16:00:00)
+ (id)distantPast;
返回很多年以前的某一天。(比如你需要一个比现在(Now)早(小)大很长时间的时间值,则可以调用该方法。测试返回了公元前0001/12/31 17:00:00)

用于创建NSDate实例的实例方法有
- (id)addTimeInterval:(NSTimeInterval)secs;
返回以目前的实例中保存的时间为基准,然后过了secs秒的时间

用于初始化NSDate实例的实例方法有
- (id)init;
初始化为当前时间。类似date方法
初始化为以2001/01/01 GMT为基准,然后过了secs秒的时间。类似dateWithTimeIntervalSinceReferenceDate:方法
- (id)initWithTimeInterval:(NSTimeInterval)secs sinceDate:(NSDate *)refDate;
初始化为以refDate为基准,然后过了secs秒的时间
- (id)initWithTimeIntervalSinceNow:(NSTimeInterval)secs;
初始化为以当前时间为基准,然后过了secs秒的时间

2. 日期之间比较可用以下方法
- (BOOL)isEqualToDate:(NSDate *)otherDate;
与otherDate比较,相同返回YES
- (NSDate *)earlierDate:(NSDate *)anotherDate;
与anotherDate比较,返回较早的那个日期
- (NSDate *)laterDate:(NSDate *)anotherDate;
与anotherDate比较,返回较晚的那个日期
- (NSComparisonResult)compare:(NSDate *)other;
该方法用于排序时调用:
. 当实例保存的日期值与anotherDate相同时返回NSOrderedSame
. 当实例保存的日期值晚于anotherDate时返回NSOrderedDescending
. 当实例保存的日期值早于anotherDate时返回NSOrderedAscending

3. 取回时间间隔可用以下方法
- (NSTimeInterval)timeIntervalSinceDate:(NSDate *)refDate;
以refDate为基准时间,返回实例保存的时间与refDate的时间间隔
- (NSTimeInterval)timeIntervalSinceNow;
以当前时间(Now)为基准时间,返回实例保存的时间与当前时间(Now)的时间间隔
- (NSTimeInterval)timeIntervalSince1970;
以1970/01/01 GMT为基准时间,返回实例保存的时间与1970/01/01 GMT的时间间隔
- (NSTimeInterval)timeIntervalSinceReferenceDate;
以2001/01/01 GMT为基准时间,返回实例保存的时间与2001/01/01 GMT的时间间隔
+ (NSTimeInterval)timeIntervalSinceReferenceDate;
以2001/01/01 GMT为基准时间,返回当前时间(Now)与2001/01/01 GMT的时间间隔

4. 将时间表示成字符串
- (NSString *)description;
以YYYY-MM-DD HH:MM:SS ±HHMM的格式表示时间。(其中 “±HHMM” 表示与GMT的存在多少小时多少分钟的时区差异。比如,若时区设置在北京,则 “±HHMM” 显示为 “+0800″)


© 著作权归作者所有

共有 人打赏支持
0_0Loong
粉丝 8
博文 69
码字总数 64426
作品 0
西安
程序员
NSDate的计算问题、日期计算、时区问题、NSTimer

一.NSDate的计算问题 NSTimeInterval 是一个以秒为单位的时间片。 1.可以用initWithTimeIntervalSinceNow方法传入一个NSTimeInterval对象,创建一个NSDate对象。 NSDate tomorrow =[[NSDat...

唐丽梅
2013/04/25
0
0
iOS时间那点事--NSDate分类

iOS 时间那点事 NSDate分类(Catogery) 分类 类,是面向对象语言的基本;类,是具有相同属性和行为的一类事物的概括,这是一种抽象;但是,事物总是多方面的,如此之多以至于我们每每看到深不...

JustBen
2013/08/23
0
1
NSDateFormatter转换时间字符串时的时区问题

` > > 取当前时间的秒数 > NSTimeInterval time = [[NSDate date] timeIntervalSince1970]; > long long int date = (long long int)time; > NSLog(@”daten%d”, date); //1295322949 > //把......

Align
2016/01/13
163
0
iOS时间那点事--NSDate

iOS时间那点事 NSDate NSDate对象用来表示一个具体的时间点。 NSDate是一个类簇,我们所使用的NSDate对象,都是NSDate的私有子类的实体。 NSDate存储的是GMT时间,使用的时候会根据 当前应用...

JustBen
2013/08/05
0
0
oc NSDate、类的扩展 、代理(家庭-保姆)

⼀、NSDate 1、⺴络请求中的时间戳 计算当前时间距离1970年1⽉1⽇的秒数 2、关于时区 24个时区 北京东八区 NSDate输出的永远是0时区的时间 英国 格林尼治时间 GMT Greenwich Mean Time 3、N...

黑伞将军
2015/08/09
0
0
ios时间那点事--NSCalendar NSDateComponents

iOS时间那点事 NSCalendar + NSDateComponents 历法能使人类确定每一日再无限的时间中的确切位置并记录历史。 日历,历法,一般历法都是遵循固定的规则的,具有周期性。日历都是已知的或可预...

JustBen
2013/08/22
0
5
获取当前年月日与日期的封装

获取当月,今年: NSInteger toMonth = [[NSDate date] YMDComponents].month; NSInteger toYear = [[NSDate date] YMDComponents].year; - (NSDateComponents )YMDComponents /**<获取年月日......

精神贵族养成中
2016/04/07
48
0
iOS开发中NSTimer的开启与关闭

调用一次计时器的方法: myTime = [NSTimer scheduledTimerWithTimeInterval:1.5 target:self selector:@selector(scrollTimer) userInfo:nil repeats:NO]; //不重复,只调用一次。timer运行......

刘三火
2016/05/22
155
0
计算两个NSDate是否处于同一天

计算两个NSDate是否处于同一天 计算两个NSDate是否处于同一天的算法,无需使用calendar接口,无需format为字符串,兼容时区: double timezoneFix = [NSTimeZone localTimeZone].secondsFro...

程序猿-樱木花道
2016/03/24
22
0
iOS时间那点事--NSTimeZone

iOS时间那点事 NSTimeZone **时区是一个地理名字,是为了克服各个地区或国家之间在使用时间上的混乱。 基本概念: GMT 0:00 格林威治标准时间; UTC +00:00 校准的全球时间; CCD +08:00 中国标...

JustBen
2013/08/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

expect脚本同步文件、expect脚本指定host和要同步的文件、构建文件分发系统

expect脚本同步文件 更改权限 执行脚本 查看执行结果 expect eof需要加上,作用是等脚本命令执行完再进行退出 expect脚本指定host和要同步的文件 更改权限,执行脚本 构建文件分发系统 需求背...

Zhouliang6
39分钟前
1
0
Hive应用:外部分区表

Hive应用:外部分区表 介绍 Hive可以创建外部分区表。创建表的时候,分区要在建表语句中体现。建完之后,你不会在表中看到数据,需要进行分区添加,使用alter语句进行添加。然后数据才会显示...

星汉
50分钟前
3
0
点击Enter登录

1. 效果 2. 实现过程(记得引入jq文件) //6.回车事件 登录 $(function() { document.onkeydown = function(event) { var e = event || window.event || arguments.callee.caller.arguments......

Lucky_Me
55分钟前
1
0
点击菜单内容切换

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> .menu{ height: 38px; background-color: #eeeeee; line-height: 38px; } .mao{ ......

南桥北木
今天
1
0
OSChina 周六乱弹 —— 妹子和游戏哪个更好玩

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @andonny :分享唐朝乐队的单曲《国际歌》 《国际歌》- 唐朝乐队 手机党少年们想听歌,请使劲儿戳(这里) @举个栗子- :日常祈雨 邪恶的大祭...

小小编辑
今天
572
6
流利阅读笔记32-20180721待学习

“人工智能”造假:只有人工,没有智能 Lala 2018-07-21 1.今日导读 当今社会,擅长单个方面的人工智能已经盛行,手机借助 AI 智慧防抖技术帮助大家拍出清晰照片,谷歌研发的 AI 助手将可以帮...

aibinxiao
今天
8
0
我的成长记录(一)

今天突然精神抖擞,在我的博客下新开一项分类>成长记录,专门记录每隔一段时间我的一点感悟吧。因为今天才专门花时间新开这样一个分类,所以以前有过的一些感悟没有记录下来,现在已经想不起...

dtqq
今天
1
0
机器学习管理平台 MLFlow

最近工作很忙,博客一直都没有更新。抽时间给大家介绍一下Databrick开源的机器学习管理平台-MLFlow。 谈起Databrick,相信即使是不熟悉机器学习和大数据的工程湿们也都有所了解,它由Spark的...

naughty
今天
17
0
idea tomcat 远程调试

tomcat 配置 编辑文件${tomcat_home}/bin/catalina.sh,在文件开头添加如下代码。    CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7829" Idea端配......

qwfys
今天
2
0
遍历目录下的文件每250M打包一个文件

#!/usr/bin/env python # -*- utf-8 -*- # @Time : 2018/7/20 0020 下午 10:16 # @Author : 陈元 # @Email : abcmeabc@163.com # @file : tarFile.py import os import tarfile import thr......

寻爱的小草
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部