我试图只获取意味着小时、分钟、秒为零的日期。这就是我正在尝试的
extension Date {
var onlyDate: Date? {
get {
let calender = Calendar.current
var dateComponents = calender.dateComponents([.year, .month, .day], from: self)
dateComponents.timeZone = NSTimeZone.system
return calender.date(from: dateComponents)
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试时
date = Date().onlyDate
Run Code Online (Sandbox Code Playgroud)
它返回前一个日期。你可以查看屏幕截图,它给我的是 4 月 14 日,而应该是 15 日
我正在将一些代码从使用 Java 8 转换LocalDatetime为使用该版本kotlinx-datetime,但我找不到任何格式化方法。具体来说,我正在替换FormatStyle.MEDIUM. 它们不存在并且我需要编写格式吗?
这是针对 Android 应用程序的。有没有我可以使用的 Android 特定库?或者我可以使用 Java 8 之前的方法来保持对旧版本 Android 的支持吗?
编辑(我的解决方案基于 Arvind 的答案):
fun Instant.toDateTimeString(formatStyle: FormatStyle = FormatStyle.MEDIUM): String {
val localDatetime = toLocalDateTime(TimeZone.currentSystemDefault())
val formatter = DateTimeFormatter.ofLocalizedDateTime(formatStyle)
return formatter.format(localDatetime.toJavaLocalDateTime())
}
Run Code Online (Sandbox Code Playgroud) 如何解析仅包含日期信息(没有时间)的日期,例如2018-07-24
我正在尝试与
let dateFormatter = DateFormatter()
dateFormat.dateFormat = "yyyy-MM-dd"
dateFormatter.dateFormat = dateFormat
dateFormatter.timeZone = TimeZone(abbreviation: "UTC")
dateFormatter.date(from: "2018-07-24")
Run Code Online (Sandbox Code Playgroud)
打印第 23 天
看起来它使用00:00:00默认时间,然后将其转换为 UTC 结果到前一天......
我怎样才能改变这一点?
嗨,我是 iOS 新手,基本上我是 android 开发人员。但是现在我正在开发 iOS 应用程序,它只是 android 的 iOS 副本。让我告诉你我想要的应用程序:
我们的应用程序具有警报功能,会提醒我们的客户在特定日期您有此会议。例如,如果用户在 2019 年 1 月 1 日上午 9 点设置闹钟,则必须在当天和时间通知用户此会议。
我读了很多,发现在 iOS 中我们不能这样做,因为当应用程序在后台时它不能运行他自己的代码?所以我有两个基本问题:
我想要的是:
首先如何安排闹钟
如果设置了警报并且应用程序在后台/终止,那么如何生成通知以及当用户单击通知时将他带到特定视图?
我知道这些是需要太多编码的 3 个主要和主要部分。但我只想要方向。给我代码块的链接。我正在使用 xcode 9.2 和 swift 4.0。提前致谢 ...
我找不到 .csv 的模板参数中允许的格式说明符列表DateFormatter.dateFormat(fromTemplate:options:locale:)。
有谁知道 Apple 在哪里记录这些说明符?
@State private var zaman = Date()\n@State private var tarihGorun = false\n@State private var tarih = "Tarih Se\xc3\xa7iniz"\nRun Code Online (Sandbox Code Playgroud)\n DatePicker("",selection: $zaman,displayedComponents: .date).labelsHidden()\n \n .accentColor(.white)\n .frame(width: 300, height: 50, alignment: .center)\n .font(Font.system(size: 25, design: .default))\n .padding(5)\n .font(Font.system(size: 15, weight: .medium, design: .serif))\n .overlay(\n RoundedRectangle(cornerRadius: 30)\n .stroke(Color(red: 45 / 255, green: 0 / 255, blue: 112 / 255), lineWidth: 1))\n .onTapGesture {\n self.tarihGorun = true\n }\n \n if tarihGorun {\n \n \n \n HStack{\n Button(action:{\n \n let zamanFormatter …Run Code Online (Sandbox Code Playgroud) 我有日期在字符串中,下面的代码格式想更改,Date
但我正在nil
let addedDate = "Tue, 25 May 2010 12:53:58 +0000"
let formatter = DateFormatter()
formatter.dateFormat = "dd MM YYYY"
let date1 = formatter.date(from: addedDate)
print("DATE \(date1)")
Run Code Online (Sandbox Code Playgroud)
我遇到一个问题,尝试通过 DateFromatter 将字符串转换为日期时只产生了“nil”,而且我不知道哪里出错了。代码非常简单:
let testDate = "2021"
let formatter = DateFormatter()
formatter.locale = Locale(identifier: "en_US_POSIX")
formatter.dateFormat = "yyyy"
formatter.timeZone = TimeZone(secondsFromGMT: 0)
let date = formatter.date(from: testDate)
Run Code Online (Sandbox Code Playgroud)
请注意,这比原来简单得多,我尝试格式化的日期实际上是:
"2021-05-01T01:00:00Z"
Run Code Online (Sandbox Code Playgroud)
但我已经将其剥离以缩小问题所在。
正如您从上面看到的,我已经精简到一年,使用 en_US_POSIX 配置 DateFormatter 并仅使用“yyyy”作为格式。这在 Playgrounds 中有效,但在我的 Xcode 模拟器(位于美国区域设置)或我自己的物理 iPhone(设置为英国区域设置)中不起作用。话虽这么说,我不知道为什么区域设置很重要,因为有问题的字符串只是一年 - 它甚至没有得到错误的年份,只是零。
我不确定我哪里错了。
"2015-06-30T17:30:36.000Z"是MySQL中DateTime值的示例.如何在Swift中将其转换为NSDate?
下面是我的代码,但它不起作用
var sqlDateFormatter = NSDateFormatter()
sqlDateFormatter.dateFormat = "yyyy’-‘MM’-'dd’T'HH’:'mm’:'ss'Z’"
self.whenPublished = self.sqlDateFormatter.dateFromString("2015-06-30T17:30:36.000Z")
Run Code Online (Sandbox Code Playgroud)