DateFormatter / ISO8601DateFormatter无法从字符串获取日期

时间:2019-12-04 08:39:04

标签: swift iso8601

如何使用ISO8601DateFormatter将字符串转换为日期?

count

上面的代码在带有Xcode 11.2.1的iPhone8模拟器中运行,我得到的是nil。

但是它可以在相同Xcode的游乐场中使用。

有人可以帮我指出我做错了什么吗?

2 个答案:

答案 0 :(得分:1)

这似乎是Xcode11和swift 5中的错误。日期实际上不是nil,但是在调试中,日期显示为nil。

public class Main {
     public static void main(String[] args) {
         Scanner sc = new Scanner(System.in);
         String a = sc.nextLine (); 
         String b = sc.nextLine ();
         if (a == b) {
             System.out.println("OK");
         }
         else if (a != b) {
             System.out.println("NG");
         }
     }
}

您可以在此post

上查看有关该错误的更多信息

答案 1 :(得分:0)

您可以为NSDateFormatter指定iSO8601日期格式以获取日期:

  let dateFormatter = DateFormatter()
  dateFormatter.dateFormat = "yyyyMMdd'T'HHmmssZ"
  let date = dateFormatter.date(from: dateString)
  print(date) //2019-12-04 12:46:00 +0000

您可以通过here.

检查日期格式的类型

我希望这对您有帮助。