2013-08-27 52 views
-1

我想將NSString轉換爲12Hr日期時間格式。在iOS中將NSString轉換爲12Hr日期時間格式

例如:2013年8月27日13時11分08秒的轉換爲:2013年8月27日1時11分08秒的格式

+1

可能重複(http://stackoverflow.com/questions/576265/convert-nsdate-to-nsstring) –

+0

轉換的NSString的NSDate然後再返回到的NSString –

+0

好了,你可以或者轉換成NSDate並返回(使用NSDateFormatter,網上有很多例子),或者你可以計算小時數字段的位置,提取它,如果大於12,則減去12。 –

回答

1

做一個NSDate

[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm"]; 

然後做出NSString

[dateFormat setDateFormat:@"yyyy-MM-dd hh:mma"]; 
0

可以使用NSDateFormatter日期的轉化率從24小時通過下面的代碼,以12小時。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
dateFormatter.dateFormat = @"HH:mm"; 
NSDate *date = [dateFormatter dateFromString:@"15:15"]; 

dateFormatter.dateFormat = @"hh:mm a"; 
NSString *pmamDateString = [dateFormatter stringFromDate:date]; 

希望這對你有幫助!

+0

謝謝,我在此嘗試過方法:NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init]; dateFormatter.dateFormat = @「yyyy-MM-dd HH:mma」; NSDate * date = [dateFormatter dateFromString:obj.date]; dateFormatter.dateFormat = @「hh:mm a」; NSString * pmamDateString = [dateFormatter stringFromDate:date]; NSLog(@「date:%@」,pmamDateString); NSLog(@「orgDate;%@」,date); 其返回null和obj.date值是:2013-08-27 13:11:08 – sneha

+0

@ user2678084 - 您需要處理兩種不同的格式。第一個沒有AM/PM字段,因此不應該有「a」。第二個需要使用小寫的「hh」,如果您希望生成該字段,可以使用「a」。 –

0
NSDate now = [NSDate date]; // assign your date to "now" 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    dateFormatter.dateFormat = @"YYYY-MM-dd hh:mm:ss"; 
    NSString *hrDateString = [dateFormatter stringFromDate:now]; 

這可能會幫助您解決問題。

0
var yourStringDate = "12145068985" 
var dateString:NSTimeInterval = yourStringDate.doubleValue/1000 
var dateformat : NSDateFormatter = NSDateFormatter()dateformat.setLocalizedDateFormatFromTemplate("EEE, dd MMM yyyy HH:mm:ss zzz") 
var stringDate = dateformat.stringFromDate(NSDate(timeIntervalSince1970: dateString)) 
println(stringDate) 
[轉換的NSDate到的NSString]
相關問題