[英]Convert date from weird string to date in format day month and year
嗨,我正在解析API的端点,从那里我得到一个包含这样的日期字符串的字符串2016-01-18T13:28:06.357但我想像01 Jan 16那样转换它,我已经尝试过使用下面提到的不同格式之一。 请提出如何完成此任务的建议。
NSString * date = [dictionary objectForKey:@"date"];
NSDateFormatter *dateformat = [[NSDateFormatter alloc] init];
[dateformat setTimeZone:[NSTimeZone timeZoneWithName:@"EST"]];
[dateformat setDateFormat:@"dd MMM yyyy"];
NSDate *myDate = [dateformat date];
// Objective C
NSString * date = [dictionary objectForKey:@"date"];
NSDateFormatter *dateformat = [[NSDateFormatter alloc] init];
[dateformat setTimeZone:[NSTimeZone timeZoneWithName:@"EST"]];
[dateformat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS"];
NSDate *myDate = [dateformat dateFromString:date];
[dateformat setDateFormat:@"dd MMM yyyy"];
NSString *strDate=[dateformat stringFromDate:myDate];
// Swift 3.0
var date = (dictionary["date"] as! String)
var dateformat = DateFormatter()
dateformat.timeZone = NSTimeZone(name: "EST")
dateformat.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS"
var myDate = dateformat.date(fromString: date)!
dateformat.dateFormat = "dd MMM yyyy"
var strDate = dateformat.string(from: myDate)
您应该使用以下格式:
NSString *dateStr = @"2016-01-18T13:28:06.357";
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS"];
NSDate *date = [formatter dateFromString:dateStr];
// date is 2016-01-18 08:28:06 +0000
然后将日期转换为所需的格式
您也可以使用:
NSString *dateString = @"2016-01-18T13:28:06.357";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"];
NSDate *date = [dateFormatter dateFromString:dateString];
// Convert date object into desired format
[dateFormatter setDateFormat:@"dd MMMM yy"];
NSString *newDateString = [dateFormatter stringFromDate:date];
NSLog(@"newDateString=%@",newDateString);
您应该使用此格式代码
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
//Get Date
[formatter setDateFormat:@"dd"];
NSString *strDate = [formatter stringFromDate:[NSDate date]];
NSLog(@"Date is - %@",strDate);
//Get Month
[formatter setDateFormat:@"MMM"];
NSString *strMonth = [formatter stringFromDate:[NSDate date]];
NSLog(@"Month is - %@",strMonth);
//Get Year
[formatter setDateFormat:@"yyyy"];
NSString *strYear = [formatter stringFromDate:[NSDate date]];
NSLog(@"Year is - %@",strYear);
日志是:
Date is - 05
Month is - Feb
Year is - 2016
要设置更多格式,请点击我
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.