我正在使用NSDateFormatter
在SQLite表格单元格值中格式化我的日期
我的单元格类型为datetime
,我输入的值如下:“01.11.2011”,“02.11.2012”(dd.MM.yyyy)
当我收到数据时,我正在使用这样的NSDateFormatter
:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd.MM.yyyy"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];
我的输出值是这样的:
2011-11-01 00:00:00 +0000
如何仅将此值缩短为日期值?像2011-11-01
?
此外,如何更改此值中的位置和分隔符,如01.11.2011
?
编辑:我的错误,我没有说明我是如何获得价值的。像这样:
NSDate *myDate = [dateFormatter dateFromString:[NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 7)]];
编辑-2:我输入了一个断点并检查了该字符串中的即将到来的值,就像01.11.2011一样,当我进入数据库时。
答案 0 :(得分:2)
您的代码非常正确。您没有显示如何从dateFormatter获取输出。格式化程序格式设置为:
[formatter setDateFormat:@"dd.mm.yyyy"];
NSString *formattedDate = [formatter stringFromDate:[NSDate date]];
这应该使用
分配formattedDate04.10.2011