2012-11-22 13 views
16

文字列「2012-11-22 10:19:04」から「20-Sep-2012」の形式で日付を表示したいとします。これどうやってするの? iOS向けの組み込みメソッドはありますか?iOS:日付形式 - 2012年9月20日

+0

はいあなたはDD-MMM-YYYYし –

+0

私はどのように行うことができますが、あなたの日付書式を設定することができますか?あなたはコードを提供できますか? – Dev

答えて

55
NSString *myString = @"2012-11-22 10:19:04"; 
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init]; 
dateFormatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";  
NSDate *yourDate = [dateFormatter dateFromString:myString]; 
dateFormatter.dateFormat = @"dd-MMM-yyyy"; 
NSLog(@"%@",[dateFormatter stringFromDate:yourDate]); 

ログはこのように印刷されます。 22-Nov-2012

+0

「2012-11-22 at 11:23」が必要な場合はどうすればよいですか?どのようにすればいいのですか? –

+0

@ EICaptainv2.0フォーマットの中に 'at'を置くことができます。 'yyyy-MM-dd 'at' HH:mm'これはうまくいくはずです。テキストを一重引用符で囲んで返すことができます。 –

-3
NSDate *today = [NSDate date]; 
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
    [dateFormat setDateFormat:@"dd-mmm-yyyy"]; 
    NSString *dateString = [dateFormat stringFromDate:today]; 
    [dateFormat release]; 
+1

これは質問の後半にのみ答えるだけでなく、間違った書式指定子を使用しています。 – rmaddy

6

NSString *originalDateString = @"2012-11-22 10:19:04"; 
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];//2012-11-22 10:19:04 

その後、あなたは新しいフォーマットで印刷するための新しいれたDateFormatterを作成するか、単に再利用することができ

NSDate *date = [dateFormatter dateFromString:originalDateString]; 

、として日付文字列を解析するためにそれを使用し、これを試してみてください既存のものとして、

[dateFormatter setDateFormat:@"dd-MMM-yyyy"];//22-Nov-2012 
NSString *formattedDateString = [dateFormatter stringFromDate:date]; 
NSLog(@"Date in new format is %@", formattedDateString); 
+0

メイト変更// 2012年9月20日〜2012年11月22日メイト.. –

+0

@ParasJoshi、ありがとうございます。私はちょうど彼の理解のために、そこに彼の質問を引用していた。それと同等のフォーマットがそのことを彼に知らせるだけです。 – iDev

0

この

NSString *str = @"2012-11-22 10:19:04"; 

    NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; 
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; 

    NSDate *date = [dateFormatter dateFromString: str]; 

    dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; 
    [dateFormatter setDateFormat:@"dd-MMM-yyyy"]; 

    NSString *convertedString = [dateFormatter stringFromDate:date]; 
    NSLog(@"Converted String : %@",convertedString);// Print Log (Output) is 22-Nov-2012 

My Blog Link with this types of method

0

あなたは

 NSDateFormatter *dfTime = [[NSDateFormatter alloc] init]; 
     [dfTime setDateFormat:@"yyyy--MM-dd HH:mm:ss"]; 
     NSDate *dtTime = [dfTime dateFromString:<Your string>]; 
     NSDateFormatter *df = [[NSDateFormatter alloc] init]; 
     [df setDateFormat:@"dd-MMM-yyyy"]; 
     <Your result string> = [df stringFromDate:dtTime]; 

Where <Your string> = @"2012-11-22 10:19:04" & 
<Your result string> will be your new string 

2
から

受け入れ答え(プログラミングお楽しみ方法以下でこれを達成することができ、このすべての情報を私のブログを参照してくださいしてみてください@Dinesh Raja)スウィフト3:

override func viewDidLoad() { 
super.viewDidLoad() 
    print(self.getFormattedDate(myString: "2012-11-22 10:19:04")) 
} 

func getFormattedDate(myString: String) -> String{ 
     let dateFormatter = DateFormatter() 
     dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" 
     let yourDate = dateFormatter.date(from: myString)! 
     dateFormatter.dateFormat = "dd-MMM-yyyy" 
     return dateFormatter.string(from: yourDate) 
    } 
関連する問題