Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 更改日期格式时获取错误的日期_Ios_Ios7_Ios8_Nsdate_Nsdateformatter - Fatal编程技术网

Ios 更改日期格式时获取错误的日期

Ios 更改日期格式时获取错误的日期,ios,ios7,ios8,nsdate,nsdateformatter,Ios,Ios7,Ios8,Nsdate,Nsdateformatter,我在更改日期格式时得到了错误的日期,我使用了以下代码 NSDateFormatter * formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat:@"MMM dd, YYYY"]; NSDate * theDate = [NSDate dateWithTimeIntervalSince1970:1419929948.7490001]; NSString * dateStr = [formatter stri

我在更改日期格式时得到了错误的日期,我使用了以下代码

NSDateFormatter * formatter =  [[NSDateFormatter alloc] init];

[formatter setDateFormat:@"MMM dd, YYYY"];

NSDate * theDate = [NSDate dateWithTimeIntervalSince1970:1419929948.7490001];

NSString * dateStr = [formatter stringFromDate:theDate];
输出-

theDate is : 2014-12-30 08:59:08 +0000
dateStr is : Dec 30, 2015

谢谢

您想使用
yyyy
而不是
yyyy
。小的
y
是日历年,而大写的
y
是“一年中的一周”的年份

下面是一个解释

F.4一年中的一周 对于公历,为“年中的一周”字段计算的值范围为1到53(对于其他日历,它们可能具有不同的范围)。一年的第1周是从该年开始至少包含指定最小天数的第一周。一年的第1周和下一年的第1周之间的周从2到52或53(如果需要)按顺序编号。例如,1998年1月1日是星期四。如果一周的第一天是星期一,一周的最少天数是4天(这些数值反映了ISO 8601和许多国家标准),那么1998年的第一周从1997年12月29日开始,到1998年1月4日结束。但是,如果一周的第一天是星期日,则1998年的第1周从1998年1月4日开始,到1998年1月10日结束。1998年的前三天是1997年第53周的一部分


您希望使用
yyyy
而不是
yyy
。小的
y
是日历年,而大写的
y
是“一年中的一周”的年份

下面是一个解释

F.4一年中的一周 对于公历,为“年中的一周”字段计算的值范围为1到53(对于其他日历,它们可能具有不同的范围)。一年的第1周是从该年开始至少包含指定最小天数的第一周。一年的第1周和下一年的第1周之间的周从2到52或53(如果需要)按顺序编号。例如,1998年1月1日是星期四。如果一周的第一天是星期一,一周的最少天数是4天(这些数值反映了ISO 8601和许多国家标准),那么1998年的第一周从1997年12月29日开始,到1998年1月4日结束。但是,如果一周的第一天是星期日,则1998年的第1周从1998年1月4日开始,到1998年1月10日结束。1998年的前三天是1997年第53周的一部分


行代码下面的更改

[formatter setDateFormat:@"MMM dd, yyyy"];
输出为:


行代码下面的更改

[formatter setDateFormat:@"MMM dd, yyyy"];
输出为:

按类别分类

+ (NSString *)dateStampFromDate:(NSDate *)date
{
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"MMM dd, yyyy"];
    NSString *timeStamp = [dateFormatter stringFromDate:date];
    return timeStamp;
}
按类别分类

+ (NSString *)dateStampFromDate:(NSDate *)date
{
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"MMM dd, yyyy"];
    NSString *timeStamp = [dateFormatter stringFromDate:date];
    return timeStamp;
}
使用下面的行

[格式化程序setDateFormat:@“MMM dd,yyyy”]

使用下面的行

[格式化程序setDateFormat:@“MMM dd,yyyy”]