eXit_door 2013-07-24 06:46 采纳率: 0%
浏览 2307

转换NSString到NSDate

从数据库中获取NSString后,需要添加日期,比如添加10//12/15/45/60。怎么实现?

NSString *expiryDateStr = [NSString stringWithFormat:@"%@",[[assets valueForKeyPath:@"assetrewards.expirydate"] objectAtIndex:0]];
        NSLog(@" date %@",expiryDateStr);    
        //DATE FORMATTER
        NSDateFormatter *dateFormat = [ [NSDateFormatter alloc] init];
        [dateFormat setDateFormat:@"dd/MM/yyyy"];
        NSDate *_date = [dateFormat dateFromString:expiryDateStr];
       [dateFormat setDateFormat:[NSString stringWithFormat:@"dd MMM yyyy HH:mm"]];
        [dateFormat setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:3600*5]];
        NSLog(@"date format %@",dateFormat);
        NSLog(@"Date: %@", _date);

获得输出结果:

date 07/10/2013
date format <NSDateFormatter: 0x9f9d4a0>
Date: 2013-10-06 18:30:00 +0000

日期变了,不知道哪出错了,如果是正确日期,应该怎么添加日子?

  • 写回答

2条回答

  • xinyoulingxi1_tong 2013-07-24 07:30
    关注
    NSString *expiryDateStr = @"07/10/2013";
    
    NSLog(@" date %@",expiryDateStr);
    
    expiryDateStr=[expiryDateStr stringByAppendingString:@" 00:00:00 +000"];
    //DATE FORMATTER
    
    NSDateFormatter *dateFormat = [ [NSDateFormatter alloc] init];   
    [dateFormat setDateFormat:@"dd/MM/yyyy HH:mm:ss Z"];
    NSDate *_date = [dateFormat dateFromString:expiryDateStr];
    [dateFormat setDateFormat:[NSString stringWithFormat:@"dd MMM yyyy HH:mm"]];
    [dateFormat setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
    
    NSDateComponents *components = [[NSCalendar currentCalendar] 
    components:NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit |NSHourCalendarUnit | NSMinuteCalendarUnit |NSSecondCalendarUnit fromDate:_date];
    NSInteger day = [components day]+1; // U can add as per your requirement
    
    
    [components setDay:day];
    NSDate *NextDate = [[NSCalendar currentCalendar] dateFromComponents:components];
    
    NSLog(@"Next Date: %@", NextDate);
    
    评论

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站