2013-02-24 4 views
1

내 응용 프로그램에서 01-22-12 (MM-dd-yy)로 날짜가 지정된 NSString이 나타납니다. 이제 그 문자열을 NSDate로 변환하고 싶습니다. 아래 코드를 사용했습니다. 하지만 날짜가 다음과 같습니다. 2012-01-04 05:00:00 +0000NSDate에 NSDate를 NSDate로 변환합니다.

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"MM-dd-yy"]; 
NSDate *dateFromString = [dateFormatter dateFromString:self.selectedWeek]; 

문자열을 NSDate로 변환하는 적절한 방법은 무엇입니까? NSDate

1 문자열 :

+0

질문이 명확하지 않습니다. 정확히 무엇을 원하니? – Ares

+0

은 동일한 형식의 nsdate 값이 필요합니다. –

답변

0

당신은 내가 당신이 원하는 여부를 완전히 명확하지 않다 원래 질문에서 descriptionWithCalendarFormat:timeZone:locale:

NSString * mydate = [dateFromString descriptionWithCalendarFormat:@"%Y-%m-%d" 
           timezone:nil 
            locale:nil]; 
+0

하지만 NSdate 개체에서 그 값이 필요합니다. –

+0

dateFromString은 변환 된 날짜이므로 NSDate 객체를 반환합니다. –

+0

하지만 nsstring에 할당되었습니다. –

1

를 사용할 수 있습니다.

또는

2

NSDate 예에서 원래 날짜 NSString을받을 수 있습니다.

코드가 기본적으로 옳습니다. 그래서 결과는 당신이 찾고 있던 무슨 것으로 보인다 어느 쪽이든

2013-02-24 09:57:24.352 datesAgain.m.out[787:707] 2012-01-22 00:00:00 +0000 
2013-02-24 09:57:24.352 datesAgain.m.out[787:707] 01-22-12 

:

NSString *dateString = @"01-22-12"; 
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"MM-dd-yy"]; 
NSDate *date = [dateFormatter dateFromString:dateString]; 
NSString *outString = [dateFormatter stringFromDate:date]; 

NSLog(@"%@",date); 
NSLog(@"%@",outString); 

이 생산 : 난 그냥 잘 작동하는 것 같았다 그것의 약간 적응 버전을 달렸다. 나는 당신이 틀린 가치를 얻는 이유가 당신이 생각하는 가치를 가지고 있지 않다는 것을 의심한다. self.selectedWeek. 디버거 나 NSLog으로 검사합니다. 다른 형식 문자열을 사용하여 다른 곳에서 다른 곳을 만드는 경우 까다 롭고 약간 직관력이 떨어질 수 있습니다. 예를 들어 s은 초를 의미하지만 S은 몇 초의 의미를 나타냅니다. 설명서 제공 here - 가장 최근의 유니 코드 형식 표준 here (ios6.0/OSX 10.8) - 이전 링크와 마찬가지로 이전의 모든 관련 표준과 마찬가지로

+0

outstring 형식에서 날짜 값이 필요합니다 01-22-12.And 해당 값을 사용하여 데이터베이스에서 값을 가져 오는 쿼리를 작성하는 해당 값을 사용하여 method.Iam에 대한 인수로 보내고 싶습니다. column 데이터 유형은 Date입니다.이 값을 해당 필드로 전달하려고합니다. –

+0

O.K. 따라서 답은 2입니다. db가 날짜에 필요한 형식을 알아 내고 그 형식의 문자열을 생성하여 쿼리에 삽입해야합니다. '01 -22-12 '가 DB에 맞습니까? 위의 코드가 작동한다면'outString'을 삽입하면됩니다. 그렇지 않다면, 두 번째'NSDateFormatter' 파일을 만들고 위에 링크 된 리소스를 사용하여 올바른 형식으로 날짜 문자열을 만들고, 형식 문자열로 설정하고, db가 수락 할 문자열을 생성 할 수 있습니다. –

+0

예, 필요합니다. 날짜는 01-22-12 형식으로 만 가능합니다. 어떻게 그 외발을 보간 할 수 있습니까? –

관련 문제