NSDate を XML から coreData に保存したい。NSDate の値を設定する方法がわかりません。誰か助けてくれませんか?私のエンティティ属性は NSDate です。それとも文字列で、日付を文字列として保存する必要がありますか??
[Sets setValue:[TBXML textForElement:xmlDate] forKey:@"beginDate"];
返信とヘルプをありがとう、
brush51
NSDate を XML から coreData に保存したい。NSDate の値を設定する方法がわかりません。誰か助けてくれませんか?私のエンティティ属性は NSDate です。それとも文字列で、日付を文字列として保存する必要がありますか??
[Sets setValue:[TBXML textForElement:xmlDate] forKey:@"beginDate"];
返信とヘルプをありがとう、
brush51
意図的に難読化しているかどうかにかかわらず、あなたはそれを言わないので、次のように推測します。
[TBXML textForElement:xmlDate]
NSString を返しますbeginDate
エンティティの Date プロパティですSets
その場合、あなたのコードは明らかに間違っています: to のインスタンスを渡す必要がありNSDate
ますsetValue:forKey:
。コードは次のようになります。
NSDateFormatter *myXMLdateReader = [[NSDateFormatter alloc] init];
[myXMLdateReader setDateFormat:@"yyyy-MM-dd"]; // for example
NSDate *itsDate = [myXMLdateReader dateFromString:[TBXML textForElement:xmlDate]];
[myXMLdateReader release];
[Sets setValue:itsDate forKey:@"beginDate"];
に追加NSDate
しても問題ありませんCoreData
。NSString
XML ファイルからNSDate
オブジェクトに変換するだけです。NSString
<-> の変換にはクラスNSDate
を使用できますNSDateFormatter
。以下の例では、私がこれを行う方法を見ることができます:
NSDateFormatter *parseFormatter = [[[NSDateFormatter alloc] init] autorelease];
[parseFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"US"] autorelease]];
[parseFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss Z"];
NSString *dateString = @"Mon, 02 May 2011 21:12:56 +0000";
NSDate *dateToAdd = [parser.parseFormatter dateFromString:dateString];
必要な日付形式を設定し、プロジェクトでこのコードを使用できます。