NSDate和NSString转化

来源:互联网 发布:震惊国外网络购物视频 编辑:程序博客网 时间:2024/05/16 02:04

这里不说什么了,直接上代码了,合适的可以直接粘贴使用,水平有限,只写了我用过的几个,尽力了!
主要是设置一个date类型的形式:NSDateFormatter

////  ViewController.m//  practise////  Created by lcy on 17/3/31.//  Copyright © 2017年 ZG. All rights reserved.//#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];    // 一:date转string    NSDate * date = [NSDate date];    NSString * string = [self StringFromDate:date];    NSLog(@"%@", string);    // 二:1416882712000    NSString * sinceString = [self StringFromSince:@"1416882712000"];    NSLog(@"%@",sinceString);    // 2014-11-25 10:31    // 三:20110826134106    NSString * dateString = [self stringFromDateString:@"20110826134106"];    NSLog(@"%@", dateString);    // 2011年08月26日 13时41分06秒}// 一:date转string- (NSString *)StringFromDate:(NSDate *)date{    /*官方文档:     NSTimeZone is an abstract class that defines the behavior of time zone objects. Time zone objects represent geopolitical regions. Consequently, these objects have names for these regions. Time zone objects also represent a temporal offset, either plus or minus, from Greenwich Mean Time (GMT) and an abbreviation (such as PST for Pacific Standard Time).     NSTimeZone是一个定义的时区对象的抽象类。时区对象代表地理区域。     因此,这些时区对象有自己的名称。     时区对象也代表一个时间偏移,无论是加或减,从格林尼治平均时间(GMT)和缩写(如太平洋标准时间PST)。     例如:     GMT 0:00 格林威治标准时间;      UTC +00:00 校准的全球时间;      CCD +08:00 中国标准时间     UTC:2017-03-31 09:27     CCD:2017-03-31 17:29     相差八小时。     */    NSTimeZone * timeZone = [[NSTimeZone alloc] initWithName:@"UTC"];    //NSDateFormatter对象,字面意思理解-->定义date的样式!    NSDateFormatter * formatter = [[NSDateFormatter alloc] init];    [formatter setTimeZone:timeZone];    [formatter setDateFormat:@"yyyy-MM-dd HH:mm"];    return [formatter stringFromDate:date];}// 二:1416882712000转为时间- (NSString *)StringFromSince:(NSString*)sinceString{    NSInteger  num = [sinceString integerValue] / 1000;    NSDateFormatter * formatter = [[NSDateFormatter alloc] init];    [formatter setDateFormat:@"yyyy-MM-dd HH:mm"];    NSDate * date = [NSDate dateWithTimeIntervalSince1970:num];    return [formatter stringFromDate:date];}// 三:20110826134106转时间// inputformatter:生成date// outformatter:生成我们需要的string- (NSString *)stringFromDateString:(NSString*)string{    NSDateFormatter * inputFormatter = [[NSDateFormatter alloc] init];    [inputFormatter setLocale:[NSLocale currentLocale]];    [inputFormatter setDateFormat:@"yyyyMMddHHmmss"];    // 首先还是需要NSDateFormatter类型    NSDateFormatter * outformatter = [[NSDateFormatter alloc] init];    [outformatter setLocale:[NSLocale currentLocale]];    [outformatter setDateFormat:@"yyyy年MM月dd日 HH时mm分ss秒"];    // NSDateFormatter方法:dateFromString和stringFromDate!    NSDate * date = [inputFormatter dateFromString:string];    return [outformatter stringFromDate:date];}@end
0 0
原创粉丝点击