字串轉成指定的日期格式

字串轉成指定的日期格式

正常情況我們利用NSDate取得日期的程式:

//-----------start-----------
    NSDate *date = [NSDate date];
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"YYYY MMMM d EEEE"];
    NSString *dateString = [dateFormat stringFromDate:date];
    NSLog(@"%@",dateString);
//------------end------------

輸出的結果:

2013-03-29 10:30:41.328 testa1[45216:c07] 2013 March 29 Friday

當有一組字串內容為日期,利用NSDateFormatter將它重新再度轉換成指日期格式並且再輸出成字串:

//-----------start-----------
    NSString *dateStringInput = @"19831231";//1983年12月31日
    //
    //設定輸入來源的格式如何
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"yyyyMMdd"];
    NSDate *date1 = [dateFormat dateFromString:dateStringInput];

    //將字串轉成標準的NSDate物件
    //重新設定成要輸出的日期格式
    [dateFormat setDateFormat:@"YYYY MMMM d EEEE"];
    //重新的將NSDate輸出成字串
    NSString *dateString = [dateFormat stringFromDate:date1];
    NSLog(@"%@ to %@",dateStringInput,dateString);
//------------end------------

輸出的結果:

2013-03-29 10:38:41.249 testa1[45337:c07] 19831231 to 1983 December 31 Saturday