2013-05-14 40 views
-5

我的錯誤在哪裏?我有這種格式的NSDate(數據:14/05/2013 10:52:27),我必須獲得一個NSString。IOS:將NSDate轉換爲NSString給出零值

NSLog(@"Data: %@",lettureObj.data); 

    NSDateFormatter *outputDateFormatter = [[NSDateFormatter alloc] init]; 
    [outputDateFormatter setDateFormat:@"dd/MM/yyyy HH:mm:ss"]; 
    NSString *data = [outputDateFormatter stringFromDate:lettureObj.data]; 
+0

第一條語句的結果是什麼。 – 2013-05-14 09:01:42

+0

data:14/05/2013 10:52:27 – 2013-05-14 09:06:21

+0

代碼是好的,它應該工作,它是爲我工作。 – Amit 2013-05-14 09:11:54

回答

0

這裏的問題是lettureObj.data是NSString的,你需要的是將其轉換成日期primarly有一個NSDate對象

+0

是的,我認爲這是問題...但在我的h。文件我定義它@屬​​性(非原子,複製)NSDate *數據; – 2013-05-14 09:25:07

+0

現在我做了lettureObj.data = [dateFormatter dateFromString:dateString];和工作 – 2013-05-14 09:34:50

+0

這就是:)開心的編碼 – 2013-05-14 09:35:36

0

使用以下功能

//*********************************Convert String into Date ********************** 

- (NSDate*) convertStringToDate:(NSString*)dateStr dateformat:(NSString*)dateformat 
{ 
    // Convert string to date object 
    //dateformat like :@"yyyy-MM-dd"] 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    [dateFormatter setDateFormat:dateformat]; 
    NSDate *date = [dateFormatter dateFromString:dateStr]; 
    [dateFormatter release];//For NON-ARC 
    return date; 
} 

//*********************************Convert date into String ********************** 

- (NSString*) convertDateToString:(NSDate*)date dateformat:(NSString*)dateformat 
{ 
    // Convert date object to desired output format 
    NSDateFormatter *dateFormat1 = [[NSDateFormatter alloc] init]; 
    [dateFormat1 setDateFormat:dateformat]; 
    NSString *dateStr = [dateFormat1 stringFromDate:date]; 
    [dateFormat1 release];//For NON-ARC 

    return dateStr; 
} 

希望它會幫助你

+0

這是我做老闆的同樣的事情。但不適合我這裏.... – 2013-05-14 09:11:19

+0

確保'lettureObj.data'是一個NSDate – 2013-05-14 09:15:04

+0

@AlessandroMattiuzzi:這些轉換方法應該工作正常,只要您傳遞正確的數據類型參數。 – Amar 2013-05-14 09:18:11

0

試試這個

NSString *strTemp = [NSString stringWithFormat:@"%@",lettureObj.data]; 

    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
    [dateFormat setDateFormat:@"dd/MM/yyyy HH:mm:ss"]; 
    NSDate *date = [dateFormat dateFromString:strTemp]; 
    [dateFormat release]; 


    NSDateFormatter *outputDateFormatter = [[NSDateFormatter alloc] init]; 
    [outputDateFormatter setDateFormat:@"dd/MM/yyyy HH:mm:ss"]; 

    NSString *data = [NSString stringWithFormat:@"%@",[outputDateFormatter stringFromDate:date]];