首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在快速格式化后日期不正确

在快速格式化后日期不正确
EN

Stack Overflow用户
提问于 2020-08-14 15:58:24
回答 2查看 135关注 0票数 0

我按照我的代码分隔了日期和时间,然后我使用了DateFormatter,但是日期不正确。为什么?

像这样:Optional("08/15/0020")

代码语言:javascript
复制
  var formateFromdate: String?
  var formateTodate: String?

  func addDate(){

  var fromDateArr = fromDateLabel.text!.components(separatedBy: ",")
        fromDate = fromDateArr[0]
        fromTime = fromDateArr[1].replacingOccurrences(of: " ", with: "")
  var toDateArr   = toDateLabel.text!.components(separatedBy: ",")
        toDate = toDateArr[0]
        toTime  = toDateArr[1].replacingOccurrences(of: " ", with: "")
        
        let inputFormatter = DateFormatter()
        inputFormatter.dateFormat = "MM/dd/yyyy"
                 
        let showDateFrom = inputFormatter.date(from: fromDate)
        inputFormatter.dateFormat = "MM/dd/yyyy"
        formateFromdate = inputFormatter.string(from: showDateFrom!)
        print(formateFromdate)
        }

注意:这里的fromDate = 08/15/2020 是正确的,但在格式化日期之后没有正确的

OutPut:

代码语言:javascript
复制
    Optional("08/15/0020") it should be 08/15/2020
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-08-14 16:42:14

从格式化的日期输出来看,fromDate = fromDateArr[0]的值似乎是"08/15/20",如果是这样的话,您必须使用如下的日期格式;

代码语言:javascript
复制
    let inputFormatter = DateFormatter()
    inputFormatter.dateFormat = "MM/dd/yy"
    
    let showDateFrom = inputFormatter.date(from: fromDate)
    inputFormatter.dateFormat = "MM/dd/yyyy"
    let formateFromdate = inputFormatter.string(from: showDateFrom!)
    print(formateFromdate)
票数 1
EN

Stack Overflow用户

发布于 2020-08-14 16:27:33

你需要先拆开它

代码语言:javascript
复制
if let formate = inputFormatter.string(from: showDateFrom!){
        print(formate)
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63416192

复制
相关文章

相似问题

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