NSDate NSDateFormatter

1.0 获取系统时间和年月日 计算年龄

//获得系统时间

NSDate *  senddate=[NSDate date];

NSDateFormatter  *dateformatter=[[NSDateFormatter alloc] init];

[dateformatter setDateFormat:@"HH:mm"];

NSString *  locationString=[dateformatter stringFromDate:senddate];

//[dateformatter setDateFormat:@"YYYY-MM-dd-HH-mm-ss"];

//NSString *  morelocationString=[dateformatter stringFromDate:senddate];

//获得系统日期

NSCalendar  * cal=[NSCalendar  currentCalendar];

NSUInteger  unitFlags=NSDayCalendarUnit|NSMonthCalendarUnit|NSYearCalendarUnit;

NSDateComponents * conponent= [cal components:unitFlags fromDate:senddate];

NSInteger year=[conponent year];

NSInteger month=[conponent month];

NSInteger day=[conponent day];

NSString *  nsDateString= [NSString  stringWithFormat:@"%4d年%2d月%2d日",year,month,day];

[dateformatter release];

NSDate *senddate=[NSDate date];
        NSCalendar *cal=[NSCalendar currentCalendar];
        NSUInteger unitFlags=NSCalendarUnitDay|NSCalendarUnitMonth|NSCalendarUnitYear;
        NSDateComponents * conponent= [cal components:unitFlags fromDate:senddate];
        NSInteger year=[conponent year];
       
        NSInteger birthYear = [[baseInforModel.birthday substringWithRange:NSMakeRange(0, 4)] integerValue];
       
        NSInteger age = year - birthYear;

NSString *ageStr = [NSString stringWithFormat:@"%tu",age];

2.0 讲一个带时区的时间字符串转换格式成普通时间// 2016-03-04T08:26:33.831Z

// 好使

- (NSString *)htcTimeToLocationStr:(NSString*)strM
{
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    //输入格式
    [dateFormatter setDateFormat:@"yyyy-MM-dd‘T‘HH:mm:ss.SSSZ"];
    dateFormatter.timeZone = [NSTimeZone timeZoneWithName:@"Asia/Shanghai"];
    NSDate *dateFormatted = [dateFormatter dateFromString:strM];
    [dateFormatter setDateFormat:@"yyyy年MM月dd日 HH:mm:ss"];
    NSString *locationTimeString=[dateFormatter stringFromDate:dateFormatted];
    return locationTimeString;

}

// 没试过这个

NSDateFormatter *format = [NSDateFormatter new];

[format setDateFormat:@"yyyyMMddHHmmss"];

[format setTimeZone:[NSTimeZone timeZoneWithName:@"Asia/Shanghai"]];

NSString *time = [format stringFromDate:[NSDate date]];

return time;

format 用你的字符串的format ,类似 yyyyMMddTHHmmss,记住你中间有个T,

然后再按时时区转下,上面代码是转成中国时区的,你换成GMT,应该就可以了

时间: 2024-08-03 19:47:11

NSDate NSDateFormatter的相关文章

Foundation框架下的常用类(NSNumber, NSValue, NSDate,NSDateFormatter)

1.NSNumber 将基础数类型数据转成对象数据(比如int  float double BOOL  long等等) //通过NSNumber将基础数类型数据转成对象数据. NSNumber * intNumber = [[NSNumber alloc] initWithInt:50]; NSNumber * floatNumber = [NSNumber numberWithFloat:45.3]; //xcode4.6以后,可以采用如下写法 NSNumber * doubleNumber

ios开发之NSDateFormatter,NSDate 与NSString日期转换,NSString任意格式互转

一般用java+oracle写的后台,可能给你返回的时间样式是这样的: 2014-01-20  13:24:33 看一下这个时间串是比较复杂,但是ios 的SDK已经为我们封装好了,把NSString 转换为 任意的NSDate 或者 NSString 使用NSDateFormatter 实现 + (NSString *)timeFromString:(NSString *)timeString { NSDateFormatter *formatter = [[NSDateFormatter a

IOS NSString与NSDate互相转换及NSDate比较

由 NSDate 转换为 NSString: NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; NSString *strDate = [dateFormatter stringFromDate:[NSDate date]]; NSLog(@"%@", strDate); 结果:

Foundation各种NS

1.1 NSRange NSRange range = NSMakeRange(2, 4);//location=2,len=4 NSString *str = @"i love oc"; //查找对应的字符串的位置location,length range = [str rangeOfString:@"love"]; 4.2 NSMutableString // NSMutableString可变字符串 NSMutableString *s1 = [NSMutab

Cocoa Touch(六):App运行机制 NSRunLoop, KVC, KVO, Notification, ARC

事件循环NSRunLoop 1.run loop概念 NSRunLoop类封装了线程进入事件循环的过程,一个runloop实例就表示了一个线程的事件循环. 处于事件循环的线程接收的事件源有两种:input source 和 timer source.线程调用便利函数 [NSTimer scheduledTimerWithTimeInterval: target: selector: userInfo: repeats:] 在创建一个NSTimer实例的同时,以默认模式Default mode在当

iOS时间格式的转换

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

日期转换

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

获得当前的系统时间和日期

1.获得当前的系统时间和日期 //获得系统时间 NSDate *  senddate=[NSDate date]; NSDateFormatter  *dateformatter=[[NSDateFormatter alloc] init]; [dateformatter setDateFormat:@"HH:mm"]; NSString *  locationString=[dateformatter stringFromDate:senddate]; //[dateformatte

iOS与日期相关的操作

// Do any additional setup after loading the view, typically from a nib. //得到当前的日期 注意week1是星期天 NSDate *date = [NSDate date]; NSLog(@"date:%@",date); //得到(24 * 60 * 60)即24小时之前的日期,dateWithTimeIntervalSinceNow: NSDate *yesterday = [NSDate dateWithT