首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将日期转换为具有不同日期格式的字符串ios?

将日期转换为具有不同日期格式的字符串ios?
EN

Stack Overflow用户
提问于 2016-08-05 07:06:50
回答 4查看 7.7K关注 0票数 1

我搜索一些堆栈淬火来转换字符串到日期,这很好,但我将字符串日期转换为NSDate,而不是返回me 0。这是我的代码:

代码语言:javascript
复制
   NSString *dateStr = @"2016-07-29 09:05";
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"yyyy-MM-ddTHH:mm:ss.SSSZ"];
    NSDate *date = [dateFormat dateFromString:dateStr];

我想把这个日期转换成yyyy-MM-ddTHH:mm:ss.SSSZ这个格式。

这里有什么问题?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-08-05 07:29:54

喜欢

代码语言:javascript
复制
NSString *dateStr = @"2016-07-29 09:05";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
// set the date format related to what the string already you have
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm"];
NSDate *date = [dateFormat dateFromString:dateStr];
 [dateFormat setTimeZone:[NSTimeZone systemTimeZone]];
 // again add the date format what the output u need
 [dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"];
NSString *finalDate = [dateFormat stringFromDate:date];
NSLog(@"finalDate==%@",finalDate);

输出

票数 4
EN

Stack Overflow用户

发布于 2016-08-05 07:09:29

您的问题是您的日期格式@"yyyy-MM-ddTHH:mm:ss.SSSZ"与日期字符串@"2016-07-29 09:05"不匹配。您需要使用不同的日期格式。

工作副本-目标C

代码语言:javascript
复制
NSString *dateStr = @"2016-07-29T09:05:00.00000Z";
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"];
    NSDate *date = [dateFormat dateFromString:dateStr];

Swift 2.x

代码语言:javascript
复制
var dateformater = NSDateFormatter()
dateformater.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
var dateString:String = "2016-07-29T09:05:00.00000Z"
let date:NSDate = dateformater.dateFromString(dateString)!

print(date)
票数 0
EN

Stack Overflow用户

发布于 2016-08-05 07:13:14

只需按以下方式更改您的格式

代码语言:javascript
复制
NSString *dateStr = @"2016-07-29 09:05";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm"];
NSDate *date = [dateFormat dateFromString:dateStr];

之后,您可以将日期转换为以下格式:

代码语言:javascript
复制
dateFormat.dateFormat = @"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'";
NSString *str = [dateFormat stringFromDate:date];
NSLog(@"%@",str);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38783186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档