NSData 和NSDateFormatter的使用总结

来源:互联网 发布:js自动签到脚本 编辑:程序博客网 时间:2024/06/06 09:40
1、创建一个时间对象     NSData * date = [NSDate date];//获取当前的时间      //再获取的时间date减去24小时的时间(昨天的这个时候)    NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow:-(24*60*60)];2、将时间按一定的格式输出    NSData * date = [NSDate date];    NSDateFormatter * formatter = [[NSDateFormatter alloc]init];    //指定输出的格式   这里格式必须是和上面定义字符串的格式相同,否则输出空    [formatter setDateFormat:@"yyyy-MM-dd"];     NSString *timeString= [formatter stringFromDate:data];    /*     NSDateFormatter 的一些格式介绍          [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; //这里要注意的是formatter的格式,如果是小写的"hh",那么时间将会跟着系统设置变成12小时或者24小时制。大写的"HH",则强制为24小时制。     [dateFormatter setDateFormat:@"yyyy年MM月dd日#EEEE"];EEEE为星期几,EEE为周几     [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];     [dateFormatter setDateFormat:@"yyyy年MMMMd日"];//MMMM 为xx月,一个d可以省去01日前的0          */3、 将一时间字符串换成Date对象,和把NData转换成string对象

NSDateFormatter配合NSDateNSString之间的转化 NSDateFormatter有下面2个方法:

- (NSString *)stringFromDate:(NSDate *)date;//NSDateNSString

- (NSDate *)dateFromString:(NSString *)string;//NSStringNSDate

NSString *datestring = [NSString stringWithFormat:@"1999-09-03"]; //想要设置自己想要的格式,可以用nsdateformatter这个类,这里是初始化 NSDateFormatter * formatter = [[NSDateFormatter alloc]init]; //指定输出的格式 这里格式必须是和上面定义字符串的格式相同,否则输出空 [formatter setDateFormat:@"yyyy-MM-dd"]; NSDate *newdate=[formatter dateFromString:datestring];  
    把字符串的时间转换成Date对象,用dateFromString方法    NSDate * newdate = [formatter dateFromString:datestring];
    // 把时间转换成字符串,把Date对象转换成String对象  用stringFromDate方法    NSString * datestring2 = [formatter stringFromDate:newdate];4、将本地时间转换成指定时区的时间 

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

    [formattersetDateFormat:@"yyyy-MM-dd hh:mm:ss"];

    NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@"Asia/Shanghai"]; //东八区时间

    [formatter setTimeZone:timeZone];

    NSString *loctime = [formatter stringFromDate:date];

    [formatter release];

    现在loctime就是指定时区的时间字符串了

5、将时间戳 转变为标准时间

    NSTimeInterval time=[timestamp doubleValue]; // timetamp时间戳字符串

    NSDate *detaildate=[NSDate dateWithTimeIntervalSince1970:time];

    NSLog(@"date:%@",[detaildate description]);

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

    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

    [dateFormatter setLocale:[NSLocale currentLocale]];

    NSString *timeString  = [dateFormatter stringFromDate:detaildate];

	
				
		
原创粉丝点击