2010-12-07 8 views

答えて

125

class reference for NSDateFormatterをご覧ください。 NSDateFormatterは、this reference guideを試すことをカスタマイズする方法の詳細については

NSString *dateStr = @"Tue, 25 May 2010 12:53:58 +0000"; 

// Convert string to date object 
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"EE, d LLLL yyyy HH:mm:ss Z"]; 
NSDate *date = [dateFormat dateFromString:dateStr]; 
[dateFormat release]; 

:あなたはこのようにそれを使用しています。

EDIT:だけ知っているので

、これは完全な月名を解析するために起こっています。 3文字の月名が必要な場合は、LLLLの代わりにLLLを使用してください。

+6

参照ガイドリンクが無効です。 – KClough

+0

@AppAspectこれは800年後のことですが、 "LLLL d、HH:mm Z"または@ "MMM dd hh:mm a"を試してみてください。参照:http://unicode.org/reports/tr35/tr35-10.html#Date_Field_Symbol_Table – migs647

+0

これによると:http://www.unicode.org/reports/tr35/ 3つのLはあなたに4文字の月名を与えます。 3 ...しかし、とにかく動作するようです。以前はクラッシュしていましたが、今はそうではありません。 – shim

5

あなたはiOSの「スタイルのいずれかで日付を格納している場合、それはこの方法を使用する傾向がはるかに簡単かつ少ないエラーです:

// Define a date formatter for storage, full style for more flexibility 
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateStyle:NSDateFormatterFullStyle]; 
[dateFormatter setTimeStyle:NSDateFormatterFullStyle]; 

// Use today as an example 
NSDate *today = [NSDate date]; 
// Format to a string using predefined styles 
NSString *dateString = [dateFormatter stringFromDate:today]; 
// Format back to a date using the same styles 
NSDate *todayFromString = [dateFormatter dateFromString:dateString]; 
7
-(NSString *)dateToFormatedDate:(NSString *)dateStr { 
    NSString *finalDate = @"2014-10-15"; 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    [dateFormatter setDateFormat:@"yyyy-MM-dd"]; 
    NSDate *date = [dateFormatter dateFromString:dateStr]; 
    [dateFormatter setDateFormat:@"EE, d MMM, YYYY"]; 
    return [dateFormatter stringFromDate:date]; 
} 
0
NSString *[email protected]"2017-05-25"; 

NSDateFormatter *dateFormatter=[NSDateFormatter alloc]init]; 

[dateFormatter setDateFormatter:@"MM-dd-yyyy"]; 

NSDate *date =[[NSDate alloc]init]; 

date=[datFormatter dateFromString:dateString]; 
+0

)このコードスニペットは質問を解決するかもしれませんが[説明を含む] http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)は、あなたの投稿の質を向上させるのに本当に役立ちます。将来の読者の質問に答えていることを忘れないでください。あなたのコード提案の理由を知らないかもしれません。 –

関連する問題