NSDate --- 日期

//
//  main.m
//  OC05-task-06
//
//  Created by Xin the Great on 15-1-26.
//  Copyright (c) 2015年 Xin the Great. All rights reserved.
//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
        //////////////////////NSDate --- 日期//////////////////////

        //获取当前系统的时间   标准时间 GMT  格林尼治时间
        NSDate *date = [NSDate date];
        NSLog(@"date is %@", date);

        NSDate *date1 = [[NSDate alloc] init];
        NSLog(@"date1 is %@", date1);

        //获取时间戳   以秒为单位
        NSTimeInterval time1970 = [date timeIntervalSince1970];
        NSLog(@"time1970 is %.1f", time1970);

        NSTimeInterval time2001 = [date timeIntervalSinceReferenceDate];
        NSLog(@"time2001 is %.1f", time2001);

        NSTimeInterval time = [date timeIntervalSinceNow];
        NSLog(@"time is %.1f", time);

        //获取昨天的时间
        NSTimeInterval second = 24 * 60 * 60;
        NSDate *yesterDayDate = [[NSDate alloc] initWithTimeIntervalSinceNow:-second];
        NSLog(@"yesterDayDate is %@",yesterDayDate);

        //获取明天的时间
        NSDate *tomorrowDayDate = [NSDate dateWithTimeInterval:second sinceDate:[NSDate date]];
        NSLog(@"tomorrowDayDate is %@", tomorrowDayDate);

        //获得未来的某一个时间
        NSDate *future = [NSDate distantFuture];
        NSLog(@"future is %@", future);

        //获得古代的某一个时间
        NSDate *past = [NSDate distantPast];
        NSLog(@"past is %@", past);

        //日期的比较
//        BOOL isTure = [date isEqualToDate:date1];
//        NSLog(@"isTure is %d", isTure);

        //返回两个时间比较早的那个时间
        NSDate *earlierDate = [tomorrowDayDate earlierDate:future];
        NSLog(@"earlierDate is %@", earlierDate);

        //返回两个时间比较晚的那个时间
        NSDate *later = [tomorrowDayDate laterDate:future];
        NSLog(@"later is %@", later);

        //将时间戳转换成字符串
        NSString *str = @"123456789";
        NSTimeInterval second2 = [str doubleValue];
        NSDate *date3 = [NSDate dateWithTimeIntervalSince1970:second2];
        NSLog(@"date3 is %@", date3);

        //格式化日期类
        NSDateFormatter *df = [[NSDateFormatter alloc] init];
        [df setDateFormat:@"yyyy年MM月dd日 HH小时mm分钟ss秒 ZZZZ"];

        //将日期按照格式化日期类转换为字符串
        NSString *str2 = [df stringFromDate:date3];
        NSLog(@"str2 is %@", str2);

        //通过字符串转换为date
        NSDate *date4 = [df dateFromString:str2];
        NSLog(@"date4 is %@", date4);

    }
    return 0;
}

时间: 2024-12-22 05:43:10

NSDate --- 日期的相关文章

OC中的NSDate日期类和Foundation框架中的结构体相关操作

一:NSDate NSDate可以?用来表?示时间,可以进?行?一些常见的?日期\时间处理 • ?一个NSDate对象就代表?一个时间• [NSDate date]返回的就是当前时间 1)日期对象的格式化操作 // 1,获取当前时间 // NSDate *date = [NSDate date]; // NSLog(@"date = %@", date); // // // 格式化输出时间 //// y : 年 //// // M : 月 //// // d : 日 //// // h

iOS NSDate日期的基本使用

#pragma mark 时间戳转成时间的字符串 zoneStr时间戳的字符串 - (NSString *)timestampIntoTime:(NSString *)zoneStr{ //时间戳的字符串转成日期的字符串 long long index = [zoneStr longLongValue]; NSDate *sineDate = [NSDate dateWithTimeIntervalSince1970:index/1000]; NSDateFormatter *dateforma

iOS 日期处理 (Swift3.0 NSDate)

处理日期的常见情景 NSDate -> String & String -> NSDate 日期比较 日期计算(基于参考日期 +/- 一定时间) 计算日期间的差异 拆解NSDate对象(分解成year/month/day/hour/minute/second 等) NSDate相关类 NSDate DateFormatter DateComponents DateComponentFormatter Calendar Date structure: Swift3.0中引入了Date s

日期字符串转换为NSDate

1 // 纯数字日期 2 NSString *str1 = @"20150611132535"; 3 // 日期字符串 4 NSString *str2 = @"2015/05/12 10:22:01"; 5 // 带时区的日期字符串 6 NSString *str3 = @"Tue Sep 06 21:37:19 +0800 2015"; 7 // 不带时区的日期字符串 8 NSString *str4 = @"Tue Sep 05

日期转换

1.NSString日期转换成某种格式下的NSDate +(NSDateFormatter*)chineseDateFormatter { NSDateFormatter *dataformatter = [[NSDateFormatter alloc] init]; NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"]; [dataformatter setLocale:locale]; [da

iOS-OC-基础-NSDate常用方法

NSDate常用方法 /*=============================NSDate日期类的使用=============================*/ // 获取当前时间,获得的时0市区的时间跟北京时间相差8小时 NSDate *currentDate = [NSDate date]; // GMT NSLog(@"currentDate :%@",currentDate); //timeIntervalSince1970 到1970-1-1的秒数,也叫时间戳(NS

iOS开发之oc(二十二)--Foundation(7)NSValue、NSDate

NSNumber之所以能包装基本数据类型为对象,是因为继承了NSValue (一)NSValue值转换 #import <Foundation/Foundation.h> int main() { // 结构体--->OC对象 CGPoint p = CGPointMake(10, 10); // 将结构体转为Value对象 NSValue *value = [NSValue valueWithPoint:p]; // 将value转为对应的结构体 // [value pointValu

NSString NSNumber NSDate NSArray

五.NSString1.在C语言中,是没有专门的字符串类型,我们是通过字符数组来实现一个字符串.2.在OC中专门的类型来描述字符串类型,NSString.3.字符串比较特殊,遵循一个"不变模式",一个字符串一但创建,字符串对象就不可以改变,不可改变的字符串是可以重复使用的,所以相同值的字符串对象,一般只会创建一个对象.4.有些字符串存在常量值中(代码区),有些字符串直接存在堆区.5.字符串的使用 a.字符串创建 1)空字符串 NSString* str = [[NSString all

IOS 格式化日期时间

在开发iOS程序时,有时候需要将时间格式调整成自己希望的格式,这个时候我们可以用NSDateFormatter类来处理.例如: //实例化一个NSDateFormatter对象 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; //设定时间格式,这里可以设置成自己需要的格式 [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; //用[NSDate da