我遇到问题,NSDateFormatter
在特定日期返回nil,例如,2016年10月16日| 2017年10月15日| 2018年10月21日......
我尝试了一些日期模式:yyyy / MM / dd,MM / dd / yyyy,dd / MM / yyyy但总是返回nil。
有什么想法吗?
答案 0 :(得分:2)
你住在巴西吗?
在这3个特定日期,夏令时在巴西从0:00变为1:00。
由于0:00不存在,日期为List<string> playerNameList = new List<string>();
using (OleDbReader r = command.ExecuteReader())
{
while(reader.Read())
{
playerNameList.Add(reader.GetString(0));
}
}
。
答案 1 :(得分:0)
试试这个:
如果您的日期是字符串。
NSString *dateStr = @"October 16, 2016";
// Convert string to date object
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"LLLL d, yyyy "];
// [dateFormat setDateStyle:NSDateFormatterShortStyle];
NSDate *date = [dateFormat dateFromString:dateStr];
NSLog(@"%@", [dateFormat stringFromDate:date]);
如果您使用[dateFormat setDateStyle:NSDateFormatterShortStyle];
,则会将结果显示为10/16/16
swift
请使用以下格式:MMMM d, yyyy
var mydate = "October 16, 2016"
let formatter = NSDateFormatter()
formatter.locale = NSLocale(localeIdentifier: "en_US_POSIX")
formatter.dateFormat = "MMMM dd, yyyy"
if let parsedDateTimeString = formatter.dateFromString(mydate) {
print(formatter.stringFromDate(parsedDateTimeString))
} else {
print("date format is wrong")
}
<强>输出:强> 2016年10月16日