'YYYY'和'yyyy'之间的确切区别是什么?我在这个链接中读到,它说明了这一点
一个常见的错误是使用YYYY.yyyy指定日历年,而YYYY指定ISO年度日历中使用的年份("年度周").在大多数情况下,yyyy和YYYY会产生相同的数字,但它们可能会有所不同.通常,您应该使用日历年.
但是当我尝试使用时
NSString *stringDate = @"Feb 28, 2013 05:30pm";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"MMM dd, yyyy hh:mma"];
NSDate *date=[dateFormatter dateFromString:stringDate];
NSLog(@"Date 1 : %@",date); //2013-02-28 12:00:00 +0000
NSString *stringDatee = @"Feb 28, 2013 05:30pm";
NSDateFormatter *dateFormatterr = [[NSDateFormatter alloc] init];
[dateFormatterr setDateFormat:@"MMM dd, YYYY hh:mma"];
NSDate *datee=[dateFormatterr dateFromString:stringDatee];
NSLog(@"Date 2 : %@",datee); //2013-01-05 12:00:00 +0000
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"MMM dd, YYYY hh:mma"];
NSString *dateString = [dateFormat stringFromDate:datee];
NSLog(@"date 3 : …Run Code Online (Sandbox Code Playgroud) 我试图将a转换NSDate为a String然后更改格式.但是当我传递NSDate给String它时会产生空白.
let formatter = DateFormatter()
let myString = (String(describing: date))
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let yourDate: Date? = formatter.date(from: myString)
formatter.dateFormat = "dd-MMM-yyyy"
print(yourDate)
Run Code Online (Sandbox Code Playgroud) 我试图调用一个函数,一个参数是当前时间和日期,另一个是文件名,它们都是字符串。如何转换Date()为字符串。我试过了:
writeToFile(content: Date(), fileName: "jm.txt")
Run Code Online (Sandbox Code Playgroud)
但这给了我错误:
无法将类型“日期”的值转换为预期的参数类型“字符串”
我有以下代码,它采用NSString并返回NSDate.我已经从一个完全正常运行的项目中复制了这个代码 - 但是有些如何给出错误的输出
- (NSDate *)dateFromString:(NSString *)date
{
static NSDateFormatter *dateFormatter;
if (!dateFormatter)
{
dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd-MM-yyyy"];
}
NSLog(@"Date: %@ Formatted: %@",date,[dateFormatter dateFromString:date]);
return [dateFormatter dateFromString:date];
}
Run Code Online (Sandbox Code Playgroud)
输出来自日志:
Date: 07-01-2014 Formatted: 2014-01-06 18:30:00 +0000
Date: 24-01-2014 Formatted: 2014-01-23 18:30:00 +0000
Date: 06-01-2014 Formatted: 2014-01-05 18:30:00 +0000
Date: 15-01-2014 Formatted: 2014-01-14 18:30:00 +0000
Date: 22-01-2014 Formatted: 2014-01-21 18:30:00 +0000
Date: 31-01-2014 Formatted: 2014-01-30 18:30:00 +0000
Date: 14-01-2014 Formatted: 2014-01-13 18:30:00 +0000
Date: 30-01-2014 Formatted: 2014-01-29 18:30:00 +0000 …Run Code Online (Sandbox Code Playgroud) 目前我有这个代码.它用于向日历添加事件.
[...]
event.startDate = [[NSDate date] dateByAddingTimeInterval:86400];
event.endDate = [[NSDate date] dateByAddingTimeInterval:90000];
Run Code Online (Sandbox Code Playgroud)
我需要的是添加到特定开始日期和结束日期的代码,这就是NSString派上用场的地方.但到目前为止我还没有运气转换它.
我有一个NSDate12小时格式的对象2014-09-16 04:40:05 pm +0000.
我想将其转换为24小时格式,并希望获得一个像NSDate这样的对象2014-09-16 16:40:05 +0000.
有人可以指导我这样做.
所以我想要一些方法,如:
-(NSDate *) get24HourFormat:(NSDate *) date{
return date object;
}
Run Code Online (Sandbox Code Playgroud) 我正在寻找一种方法来使用Swift 3在标签中显示当前日期.目前我正在使用DateFormatter.dateFormat,但我得到的唯一输出是
DD.MM.YYYY
这是代码行:
lbl_Date.text = DateFormatter.dateFormat(fromTemplate: "MMddyyyy", options: 0, locale: NSLocale(localeIdentifier: "de-AT") as Locale)
Run Code Online (Sandbox Code Playgroud)
我今天的预期产量应该是:
2016年11月12日
我知道我可以通过dateTimeComponents获得时间,但我还没弄明白我如何才能获得标签中的日期(日,月和年):
// get the current date and time
let currentDateTime = Date()
// get the user's calendar
let userCalendar = Calendar.current
// choose which date and time components are needed
let requestedComponents: Set<Calendar.Component> = [
.year,
.month,
.day,
.hour,
.minute,
.second
]
// get the components
let dateTimeComponents = userCalendar.dateComponents(requestedComponents, from: currentDateTime)
Run Code Online (Sandbox Code Playgroud)
有什么最清晰的方式在我的标签中显示当前日期?