zoukankan      html  css  js  c++  java
  • ios时间格式转换

      1 //实例化一个NSDateFormatter对象
      2 
      3 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
      4 
      5 //设定时间格式,这里可以设置成自己需要的格式
      6 
      7 [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
      8 
      9 //用[NSDate date]可以获取系统当前时间
     10 
     11 NSString *currentDateStr = [dateFormatter stringFromDate:[NSDate date]];
     12 
     13 //输出格式为:2010-10-27 10:22:13
     14 
     15 NSLog(@"%@",currentDateStr);
     16 
     17 //alloc后对不使用的对象别忘了release
     18 
     19 [dateFormatter release];
     20 
     21 ///根据时间字符串获得当前星期几--
     22 
     23  -(void)GetTime
     24 
     25     { 
     26 
     27         //根据字符串转换成一种时间格式 供下面解析
     28 
     29        NSString* string = @"2013-07-16 13:21";
     30 
     31        NSDateFormatter *inputFormatter = [[[NSDateFormatter alloc] init]autorelease];
     32 
     33         [inputFormattersetDateFormat:@"yyyy-MM-dd HH:mm"];
     34 
     35        NSDate* inputDate = [inputFormatter dateFromString:string];
     36 
     37         
     38 
     39         NSCalendar *calendar = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar]autorelease];
     40 
     41         NSDateComponents *comps = [[[NSDateComponents alloc] init] autorelease];
     42 
     43        NSInteger unitFlags = NSYearCalendarUnit |
     44 
     45         NSMonthCalendarUnit |
     46 
     47         NSDayCalendarUnit |
     48 
     49         NSWeekdayCalendarUnit |
     50 
     51         NSHourCalendarUnit |
     52 
     53         NSMinuteCalendarUnit |
     54 
     55         NSSecondCalendarUnit;
     56 
     57         
     58 
     59         comps = [calendarcomponents:unitFlags fromDate:inputDate];
     60 
     61        int week = [comps weekday];
     62 
     63        NSString *strWeek = [self getweek:week];
     64 
     65        self.textfield.text = strWeek;
     66 
     67        NSLog(@"week is:%@",strWeek);
     68 
     69     }
     70 
     71     -(NSString*)getweek:(NSInteger)week
     72 
     73     {
     74 
     75        NSString*weekStr=nil;
     76 
     77        if(week==1)
     78 
     79         {
     80 
     81             weekStr=@"星期天";
     82 
     83         }else if(week==2){
     84 
     85             weekStr=@"星期一";
     86 
     87             
     88 
     89         }else if(week==3){
     90 
     91             weekStr=@"星期二";
     92 
     93             
     94 
     95         }else if(week==4){
     96 
     97             weekStr=@"星期三";
     98 
     99             
    100 
    101         }else if(week==5){
    102 
    103             weekStr=@"星期四";
    104 
    105             
    106 
    107         }else if(week==6){
    108 
    109             weekStr=@"星期五";
    110 
    111             
    112 
    113         }else if(week==7){
    114 
    115             weekStr=@"星期六";
    116 
    117             
    118 
    119         }
    120 
    121        return weekStr;
    122 
    123     }

             各种时间字符说明

             (:)

             时间分隔符。在某些区域设置中,可以使用其他字符表示时间分隔符。时间分隔符在格式化时间值时分隔小时、分钟和秒。格式化输出中用作时间分隔符的实际字符由您的应用程序的当前区域性值确定。

             (/)

             日期分隔符。在某些区域设置中,可以使用其他字符表示日期分隔符。日期分隔符在格式化日期值时分隔日、月和年。格式化输出中用作日期分隔符的实际字符由您的应用程序的当前区域性确定。

             (%)

             用于表明不论尾随什么字母,随后字符都应该以单字母格式读取。也用于表明单字母格式应以用户定义格式读取。有关更多详细信息,请参见下面的内容。

             d

             将日显示为不带前导零的数字(如 1)。如果这是用户定义的数字格式中的唯一字符,请使用 %d。

             dd

             将日显示为带前导零的数字(如 01)。

             EEE

             将日显示为缩写形式(例如 Sun)。

             EEEE

            将日显示为全名(例如 Sunday)。

             M

             将月份显示为不带前导零的数字(如一月表示为 1)。如果这是用户定义的数字格式中的唯一字符,请使用 %M。

             MM

            将月份显示为带前导零的数字(例如 01/12/01)。

             MMM

             将月份显示为缩写形式(例如 Jan)。

             MMMM

            将月份显示为完整月份名(例如 January)。

             gg

            显示时代/纪元字符串(例如 A.D.

             h

             使用 12 小时制将小时显示为不带前导零的数字(例如 1:15:15 PM)。如果这是用户定义的数字格式中的唯一字符,请使用 %h。

             hh

            使用 12 小时制将小时显示为带前导零的数字(例如 01:15:15 PM)。

             H

             使用 24 小时制将小时显示为不带前导零的数字(例如 1:15:15)。如果这是用户定义的数字格式中的唯一字符,请使用 %H。

             HH

             使用 24 小时制将小时显示为带前导零的数字(例如 01:15:15)。

             m

             将分钟显示为不带前导零的数字(例如 12:1:15)。如果这是用户定义的数字格式中的唯一字符,请使用 %m。

             mm

            将分钟显示为带前导零的数字(例如 12:01:15)。

             s

             将秒显示为不带前导零的数字(例如 12:15:5)。如果这是用户定义的数字格式中的唯一字符,请使用 %s。

             ss

            将秒显示为带前导零的数字(例如 12:15:05)。

             f

             显示秒的小数部分。例如,ff将精确显示到百分之一秒,而 ffff 将精确显示到万分之一秒。用户定义格式中最多可使用七个 f符号。如果这是用户定义的数字格式中的唯一字符,请使用 %f。

             t

             使用 12 小时制,并对中午之前的任一小时显示大写的 A,对中午到 11:59 P.M之间的任一小时显示大写的 P。如果这是用户定义的数字格式中的唯一字符,请使用 %t。

             tt

             对于使用 12 小时制的区域设置,对中午之前任一小时显示大写的 AM,对中午到 11:59 P.M之间的任一小时显示大写的 PM。

             对于使用 24 小时制的区域设置,不显示任何字符。

             y

             将年份 (0-9)显示为不带前导零的数字。如果这是用户定义的数字格式中的唯一字符,请使用 %y。

             yy

             以带前导零的两位数字格式显示年份(如果适用)。

             yyy

             以四位数字格式显示年份。

             yyyy

             以四位数字格式显示年份。

             z

             显示不带前导零的时区偏移量(如 -8)。如果这是用户定义的数字格式中的唯一字符,请使用 %z。

             zz

             显示带前导零的时区偏移量(例如 -08)

             zzz

            显示完整的时区偏移量(例如 -08:00

            格式显示

             M/d/yy

            12/7/58

             d-MMM

            7-Dec

             d-MMMM-yy

            7-December-58

             d MMMM

            7 December

             MMMM yy

             December58

             hh:mm tt

            08:50 PM

             h:mm:ss t

            8:50:35 P

             H:mm

            20:50

             H:mm:ss

            20:50:35

             M/d/yyyy H:mm

            12/7/1958 20:50

  • 相关阅读:
    SICP学习笔记 第二章 (2.3)
    SICP学习笔记 第二章 (2.4)
    SICP学习笔记 第二章 (2.2)(上)
    SICP学习笔记 第一章 (1.3)
    SICP学习笔记 第二章 (2.1)
    sql server 获取服务器中数据库的大小
    vss File for <file> (<physical file>) Was Not Found
    Linq 中的获取最大值得记录
    silverlight 报错超时
    asp 中的getChunk(img_size)
  • 原文地址:https://www.cnblogs.com/520gp-iOS/p/4811373.html
Copyright © 2011-2022 走看看