2016-06-27 3 views
0

내가있는 내가 "6/30/2016 1:00:00 PM"와 같은 문자열을 날짜 포맷을 사용하고 응용 프로그램이 30-Jun-2016 1:00 같은 .I이날짜 포맷터가 iOS에서 잘못된 날짜를 제공합니까?

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"mm/dd/yyyy hh:mm:ss a"]; 
NSDate *date = [dateFormat dateFromString:dateStr]; 
[dateFormat setDateFormat:@"dd-MMM-yyyy hh:mm"]; 
NSString *stringDate = [dateFormat stringFromDate:date]; 
return stringDate; 

같은 일을하고 있지만,이 30처럼 나에게 잘못된 날짜를 제공하지 않는했다 Jan-2016 1:00.

아무도 내가 잘못 가고있는 부분을 지적 할 수 있습니까?

+0

질문을 이해할 수 없습니다. – user3182143

+2

두 번째 줄에이 날짜 형식을 사용하십시오. MM/dd/yyyy hh : mm : ss a. 그 결과로 나는 30-Jun-2016 01:00을 얻고 있습니다. – kb920

답변

1

월을으로 소문자로 잘못 입력해야합니다. 작은 숫자는 mm 분입니다. 이런 식으로 코드를 변경하십시오.

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"MM/dd/yyyy hh:mm:ss a"]; 
NSDate *date = [dateFormat dateFromString:dateStr]; 
[dateFormat setDateFormat:@"dd-MMM-yyyy hh:mm"]; 
NSString *stringDate = [dateFormat stringFromDate:date]; 
return stringDate; 

희망이 도움이 될 것입니다.

관련 문제