NSDate和NSDateFormatter

原创 2015年11月18日 14:46:55
#import <Foundation/Foundation.h>
#import "NSString+PrintfString.h"
int main(int argc, const char * argv[]) {

// 系统中 表示时间日期的类 NSDate
// 初始化一个日期
// NSDate *date = [NSDate date];
// 打印出来的 是格林威治治时间0时区(咱们在东8区)
// NSLog(@"%@",date);
// 思考:是date直接创建成0时区? 还是由于NSDate的描述方法 默认打印0时区?
// 验证:把date转化成字符串 输出来验证

// 距离现在 n秒之后的时间日期
// 昨天(加个负号)
// NSDate *yesterdayDate = [NSDate dateWithTimeIntervalSinceNow:-3600 * 24];
// NSLog(@"%@",yesterdayDate);
//
// NSDate *date2 = [NSDate dateWithTimeIntervalSinceReferenceDate:3600];
// NSLog(@"%@",date2);
//
// NSDate *date3 = [NSDate dateWithTimeIntervalSince1970:3600];
// NSLog(@"%@",date3);
//
// 计算当前时间和⼀个固定时间的差值,如果差值在60秒内,输出“刚刚”,如果在60秒外3600秒内,输出“xx分钟前”,如果3600秒外,3600*24秒内,输出“xx⼩时前”。

// 当前时间
// NSDate *dateNow = [NSDate date];
// // 固定时间
// NSDate *date = [NSDate dateWithTimeIntervalSinceNow:3000];
// // 计算一下时间间隔
// NSTimeInterval time = [date timeIntervalSinceDate:dateNow];
// NSLog(@"%.0f",time);
// if (time <= 60) {
// NSLog(@"刚刚");
// }else if (time < 3600){
// float minute = time / 60;
// NSLog(@"%.0f分钟前",minute);
// }else if (time < 3600*24){
// float hour = time / 60 / 60;
// NSLog(@"%.0f小时前",hour);
// }


// 按你喜欢的格式 来输出时间
// 继承一个抽象类
// 抽象类的特点: 抽象类本身 不实现具体功能
// 具体功能 由子类去实现

// 初始化一个日期格式对象
// NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
// 添加一个格式
/*
y --- 年
M --- 月
d --- 日
H --- 小时
m --- 分钟
s --- 秒
*/
// 2015年11月11日 20-00-00
// [formatter setDateFormat:@"yyyy年MM月dd日 HH-mm-ss"];
// 把当前时间转化为 按上面的格式 输出
// NSDate *date = [NSDate date];
// NSString *str = [formatter stringFromDate:date];
// NSLog(@"%@",str);

// 把一个日期时间的字符串 转化为NSDate 打印出来
/*
NSString *str = @"2012.04.01 20:21:56";
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
[formatter setDateFormat:@"yyyy.MM.dd HH:mm:ss"];

// 创建一个时区
NSTimeZone *zone = [NSTimeZone timeZoneForSecondsFromGMT:0];

// 设置一下时区
[formatter setTimeZone:zone];

// 转化成date
NSDate *date = [formatter dateFromString:str];
NSLog(@"%@",date);
*/
// 时区类
// 获取系统时区
// NSTimeZone *zone = [NSTimeZone systemTimeZone];
// NSLog(@"%@",zone);
//

// 将字符串@“2014年05⽉01⽇ 10点23分18秒”转换为NSDate对象。
// NSString *str = @"2014年05⽉01⽇ 10点23分18秒";
// NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
// [formatter setDateFormat:@"yyyy年MM月dd日 HH点mm分ss秒"];
//
// NSTimeZone *zone = [NSTimeZone timeZoneForSecondsFromGMT:0];
// [formatter setTimeZone:zone];
//
// NSDate *date = [formatter dateFromString:str];
// NSLog(@"%@",date);
//
版权声明:本文为博主原创文章,未经博主允许不得转载。

【精】iOS 日期操作总结:NSDate、NSDateFormatter

iOS 日期操作总结:NSDate、NSDateFormatter

iOS NSDate,NSDateFormatter,NSTimeZone,NSTimeInterval

最近开发中做了很多时间处理,总之真的很烦,所以来总结一下。 //NSDate是用来存储时间 //NSDate 的初始化 //初始化一个date对象,获取当前时间和日期。 ...

day7: 类的扩展 NSDate NSDateFormatter Category Extension延展 Protocol协议 delegate代理

类的扩展 NSDate NSDateFormatter Category Extension延展 Protocol协议 delegate代理

关于NSDate,NSDateFormatter,NSTimeZone的一些通俗理解

基础概念 1.GMT 0:00 格林威治标准时间; UTC +00:00 校准的全球时间; CCD +08:00 中国标准时间 2.iOS中的时间类NSDate中存储的时间,都是相对于GMT的,我们使...

NSDate与NSDateFormatter

NSDate是一个日期类,在学习之前你可以了解一下UTC- 世界标准时间

Objective-C_NSDate、NSDateFormatter

讲解NSDate、NSDateFormatter的使⽤。

iOS关于NSDate、NSString、NSDateFormatter设置时间格式等问题

1 获取当前时间 // 当前时间 NSDate *now = [NSDate date]; // 获取时间中的详细信息年、月、日、时、分、秒 NSCalendar *calendar = [NSCal...

NSDateFormatter的格式串详解—将GMT格式转为NSDate

iPhone开发中, Object-C中的NSDate是一个很有趣的类型,但在 转换成字符串的类型的时候还是稍有些麻烦,还得带一个NSDateFormatter的类型.但官方文档上对NSDateFor...

OC语言 常用数据类型=>>NSDate & NSCalendar & NSDateFormatter

//NSDate //在OC中,Foundation框架为我们提供了强大的时间操作类‘NSDate’,该类封装了各种处理时间和日期的API, //创建= 获...
  • kiwirr
  • kiwirr
  • 2015年12月17日 19:26
  • 254

NSDate , NSDateComponents , NSDateFormatter, NSCalendar

NSDate存储的是世界标准时(UTC),输出时需要根据时区转换为本地时间   Dates         NSDate类提供了创建date,比较date以及计算两个date之间间隔...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:NSDate和NSDateFormatter
举报原因:
原因补充:

(最多只允许输入30个字)