【问题标题】:iOS 8 - get current date as DD/MM/YYYYiOS 8 - 获取当前日期为 DD/MM/YYYY
【发布时间】:2015-01-06 01:17:31
【问题描述】:

谁能给我一些我如何得到日期的代码?

NSDateComponents *components = [[NSCalendarcurrentCalendar] component:NSCalendarUnitDay | NSCalendarUnitMonth | NSCalendarUnitYearfromDate:[NSDatedate]]; 

NSString *day = [components day]; 
NSString *week = [components month]; 
NSString *year = [components year]; 

NSString *date = [NSString stringWithFormat:@"%@.%@.%@",day,week,year];

^^ 我的代码不工作 :S

有没有办法让我得到明天的日期,1 周后等等......

谢谢:)

【问题讨论】:

  • 谷歌“NSDateFormatter”。
  • 定义“不工作”。
  • 这个问题怎么跑题了?它不是要求任何人“推荐或查找书籍、工具、软件库、教程或其他非现场资源”。

标签: ios date nsdate


【解决方案1】:

您可以使用代码的变体,使用NSCalendarcomponents 方法检索数字组件:

NSDateComponents *components = [[NSCalendar currentCalendar] components:NSCalendarUnitDay | NSCalendarUnitMonth | NSCalendarUnitYear fromDate:[NSDate date]];

NSInteger day = [components day];
NSInteger month = [components month];
NSInteger year = [components year];

NSString *string = [NSString stringWithFormat:@"%ld.%ld.%ld", (long)day, (long)month, (long)year];

注意,这是components,而不是component

或者,更好的是,您可以使用NSDateFormatter

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"d.M.yyyy";
NSString *string = [formatter stringFromDate:[NSDate date]];

【讨论】:

    【解决方案2】:
      NSDate *todayDate = [NSDate date]; //Get todays date 
        NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; // here we create NSDateFormatter object for change the Format of date. 
        [dateFormatter setDateFormat:@"dd-MM-yyyy"]; //Here we can set the format which we need 
        NSString *convertedDateString = [dateFormatter stringFromDate:todayDate];// Here convert date in NSString
    NSLog("Today formatted date is %@",convertedDateString);
    

    【讨论】:

      【解决方案3】:

      你可以这样

      let dateFormatter = DateFormatter()
      dateFormatter.dateFormat = "dd/MM/yyyy"
      let dateString = dateFormatter.string(from:Date())
      print(dateString)
      

      【讨论】:

        【解决方案4】:

        试试这个,设置不同的组件单位:

            NSDate *today = [NSDate date];
            NSCalendar *gregorian = [[NSCalendar alloc]
                                     initWithCalendarIdentifier:NSGregorianCalendar];
            NSDateComponents * components =
                                [gregorian components:(NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit) fromDate:today];
            NSInteger day = [components day];
            NSInteger month = [components month];
            NSInteger year = [components year];
        

        如果您想获得其他日子,请使用此链接 calendar get other day

        【讨论】:

          猜你喜欢
          • 2011-12-06
          • 1970-01-01
          • 1970-01-01
          • 2013-10-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-01-02
          • 1970-01-01
          相关资源
          最近更新 更多