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

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

 //获得系统时间  

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];  

2。从字符串来获得NSDate

string  strYear="1988";  

string  strMonth="09";  

string  strDay="18";  

string  strHour="5";  

string  strMinutes="18";  

string  strSec="20";  

morelocationString=[NSString stringWithFormat:@"%s-%s-%s-%s-%s-%s",strYear.c_str(),strMonth.c_str(),  

                                strDay.c_str(),strHour.c_str(),strMinutes.c_str(),strSec.c_str()];  

//根据时间字符串获得NSDate  

         

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

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

  NSDate  * oldDate=[dateformatter dateFromString:morelocationString];  

   通过上面的代码,获得了NSDate。

3。 从GMT时间,得到本地时间

  NSDate  * oldDate=[dateformatter dateFromString:morelocationString];   

  NSTimeInterval  timeZoneOffset=[[NSTimeZone systemTimeZone] secondsFromGMT];

    NSDate  * newDate=[oldDate dateByAddingTimeInterval:timeZoneOffset];  

原文地址:https://www.cnblogs.com/496668219long/p/4983764.html