2013-08-26 3 views
1

현재 NSDate 문자열의 포맷을 시도하고 있습니다.NSDateFormatter로 작업하기

- (NSString *)monthFormatter:(NSDate *)date 
{ 
    static NSDateFormatter *dateFormat = nil; 

    if (nil == dateFormat) { 
     dateFormat = [[NSDateFormatter alloc] init]; 
     [dateFormat setDateFormat:@"h:mm a"]; 
    } 

    return [dateFormat stringFromDate:date]; 
} 

내가 뭘하고 싶은 것은 추가 0을 취하는 날짜 포맷을 만들 수 있습니다 :

2013-08-25 22:54:00.500 MYSCHEDULER[23153:c07] 9:00 PM 
2013-08-25 22:54:00.501 MYSCHEDULER[23153:c07] 2013-08-10 04:00:00 +0000 

여기 내가 사용하는 코드입니다.

그래서 나는 9:00 PM과 같은 시간이 있고 나는 9 PM으로 시간을 변환하고 싶습니다. NSDateFormatter으로이 작업을 수행 할 수있는 방법이 있습니까?

나는이 할 시도 : [dateFormat setDateFormat:@"h:m a"];을하지만 그것은 단지 날짜과 같이 표시 만든 : 9:0 PM

누구나 어떤 아이디어가?

[dateFormat setDateFormat:@"h a"]; 

하고이 사건을 satify 것입니다하지만 어쩌면 9:30 PM의 경우에, 무엇을 수행해야합니다 :

또한, 내가 쓸 수 이해 EDIT? 아마 dateformatter 방법의 체커일까요? 그러나 나는 애플이 이미이 사건을 구현했다고 생각한다.

당신은 다음과 같이 추가 할 필요가
+0

이것을 시도하십시오 [dateFormat setDateFormat : @ "ha"]; –

+0

하하 방금 편집을했습니다 ... 방금 사건에 대해 생각하게 만들었습니다. PI는 날짜가 9시 또는 9시 12 분 또는 9시 13 분인지 확인하기 위해 체커를 만들어야 할 수도 있다고 생각합니다. . 시간이 시간에 있는지 또는 시간이 지나서 있는지 확인하십시오. – jsetting32

+0

시간이 9.00 PM이면 오후 9시를 표시하고 9.12 PM th 인 경우 표시는 –

답변

0

, 나는 당신이 당신의 답변으로 오후 9시는 아래의 코드를 제공하려는 경우

[dateFormat setDateFormat:@"MM/dd/yyyy HH"]; 
0

: 그것이 작동하는 희망이 당신의 필요에 따라 잘 작동하려고

NSString *time = [self monthFormatter:[NSDate date]]; 
NSArray *timeAMPM = [time componentsSeparatedByString:@" "]; 
NSArray *hour = [time componentsSeparatedByString:@":"]; 

NSLog(@"the time :%@ %@",[hour objectAtIndex:0],[timeAMPM objectAtIndex:1]);