【问题标题】:NSString to NSDate conversion and NSDate don't give only dateNSString 到 NSDate 的转换和 NSDate 不只给出日期
【发布时间】:2012-11-14 04:43:29
【问题描述】:

希望你会做得很好。

我在标签上有一个日期(2012 年 11 月 14 日),这意味着

Label.text returns the string "November 14, 2012"

现在我想要将此字符串转换为NSDate。我是通过使用这段代码 sn-p 做到的。

formator.dateStyle=NSDateFormatterShortStyle;
formator.dateFormat=@"yyyy-MM-dd";
NSString *temp=[NSString stringWithFormat:@"%@",[formator stringFromDate:myDatePicker.date]];
NSLog(@"%@",temp);
NSDate *myDate=[formator dateFromString:temp];
NSLog(@"%@",myDate);

myDatePicker.dateoutput= November 14,2012

temp'soutput= 2012-11-14

myDate'soutput= 2012-06-13 19:00:00 +0000

myDate 还给了我时间和格林威治标准时间设置以及日期后 1 天,即 13 而不是 14,我真的不想得到。我只需要日期。

我的要求是得到myDate的输出2012-11-14

感谢您在期待中的所有帮助。

【问题讨论】:

    标签: objective-c nsstring ios6 nsdate xcode4.5


    【解决方案1】:

    试试这个,让我知道:

    NSDate *dateTemp = [[NSDate alloc] init];
    NSDateFormatter *dateFormat1 = [[NSDateFormatter alloc] init];
    NSDateFormatter *dateFormat2 = [[NSDateFormatter alloc] init];
    
    [dateFormat1 setDateFormat:@"MM/dd/yy"];
    [dateFormat2 setDateFormat:@"yyyy-MM-dd"];
    
    dateTemp = [dateFormat1 dateFromString:newInvoice.date];
    newDate.date = [dateFormat2 stringFromDate:dateTemp];
    

    这会很有帮助:

    -(NSDate *)dateWithOutTime:(NSDate *)datDate
        if( datDate == nil ) {
            datDate = [NSDate date];
        }
        NSDateComponents* comps = [[NSCalendar currentCalendar] components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit fromDate:datDate];
        return [[NSCalendar currentCalendar] dateFromComponents:comps];
    }
    

    【讨论】:

    • 如果你找到了答案,请毫不犹豫地勾选它:)
    • Anoop Vaidya :: 感谢您尽快回复,伙计。但我认为我们只是错过了问题的轨道。我想要的最终结果是 NSDate 只有 date 没有 time+GMT 设置。在您的回答中,newDateNSString 的类型。我不需要 NSString。我需要 NSDate。
    • Anoop Vaidya :: 抱歉,不幸的是它不起作用,它仍然像(2012-11-13 19:00:00 +0000) 一样给出时间戳。我试了两次。我知道我们离结果并不远,但实际上我只是被困在这里:-(
    • @Azeem 我错过了某个地方...我猜你必须以字符串结尾,否则 NSDate 将始终包含时间:(
    • :: 但实际上我必须这样做。无论如何,谢谢你的时间伙伴。如果我发现任何东西,肯定会发布这个问题的答案。
    猜你喜欢
    • 2017-06-19
    • 2011-05-18
    • 1970-01-01
    • 1970-01-01
    • 2011-11-01
    • 2014-01-18
    • 2011-06-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多