2012-06-21 3 views
0

다른 예제를 살펴본 결과이 문자열을 아직 날짜로 변환 할 수 없습니다.NSString을 NSDate로 변환하는 중 문제가 발생했습니다.

예측 변환 : 2012-07-01 0시 0분 0초 0000

타임 스탬프 변환 :이 코드를 실행 한 후 나는 NSLogs에서 다음과 같은 출력을 얻을 2012년 6월 24일 0시 0분 0초 0000

예측 : 604800.000000

내가 사용하는 하드 코딩 날짜가 없습니다. 아무도 이유를 아나요? 코드는 다음과 같습니다.

NSString *timeStamp = @"20120620 19:23";//[[predictionData objectAtIndex:0 ] valueForKey:@"tmstmp"]; 
    NSString *predictionTime = @"20120620 19:30";// [[predictionData objectAtIndex:0 ] valueForKey:@"prdtm"]; 


    NSDateFormatter *ts = [[NSDateFormatter alloc] init]; 
    [ts setDateFormat:@"yyyyMMdd HH:dd"]; 
    NSDate *convertedTS = [ts dateFromString:timeStamp]; 

    NSDateFormatter *pt = [[NSDateFormatter alloc] init]; 
    [pt setDateFormat:@"yyyyMMdd HH:dd"]; 
    NSDate *convertedPT = [pt dateFromString:predictionTime]; 

    NSTimeInterval timeDifference = [convertedPT timeIntervalSinceDate:convertedTS]; 



    NSLog(@"Prediction Conversion: %@", [convertedPT description]); 
    NSLog(@"Timestamp Conversion: %@", [convertedTS description]); 

    NSLog(@"Prediction: %f", timeDifference); 

감사합니다.

답변

1

mm 대신 분으로 dd를 사용하고 있습니다. 이 :

[ts setDateFormat:@"yyyyMMdd HH:dd"]; 

이 같아야합니다

[ts setDateFormat:@"yyyyMMdd HH:mm"]; 
+0

수 포맷터는 여전히 문자열에서 날짜와 시간이 잘못지고 해결해야한다. 내가 얻지 못합니다 예상 전환 : 2012-06-21 00:30:00 +0000 타임 스탬프 전환 : 2012-06-21 00:23:00 +0000 –

1

당신의 포맷 문자열이 올바르지 않습니다.

HH:dd 

는 또한

HH:mm 

해야합니다, 당신은 고려 시간대를 취할 필요가있다. +XXXX이 지정되지 않으면 기본적으로 UTC가 사용됩니다.

[ts setTimeZone:[NSTimeZone /*timezone*/]]; 

/*timezone*/NSTimeZone 클래스에 의해 지정됩니다 시간대를 설정합니다. 시간대 (및 여러 다른 시간대)를 사용하는 방법에는 여러 가지가 있으므로 가장 적합한 방법을 선택하십시오.

+0

고정되어 있습니다. 아직 받고 있습니다 : –

+0

예상 전환 수 : 2012-06 -21 00:30:00 +0000 타임 스탬프 전환 : 2012-06-21 00:23:00 +0000 –

+0

@JeffW 나는 타임 존을 적용하기 위해 내 대답을 편집했습니다. 그 고정 된 포맷터와 함께 –

0

로케일을 설정하고 en_us_POSIX으로 설정해야합니다.

ts.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_us_POSIX"]; 

또한, 그와 HH:mm하지 dd

+0

여전히 문자열에서 일과 시간을 잘못 받고있다. 내가 얻지 못합니다 예상 전환 : 2012-06-21 00:30:00 +0000 타임 스탬프 전환 : 2012-06-21 00:23:00 +0000 –

관련 문제