【问题标题】:NSDateFormatter issue with date format in iOS 8iOS 8 中日期格式的 NSDateFormatter 问题
【发布时间】:2014-09-18 07:46:49
【问题描述】:

我有一个 NSDateFormatter 用于将 NSDate 格式化为字符串。以下格式不起作用:ddMMyyyy_hhmmss_SSS。当我尝试格式化 NSDate 时,我得到以下输出:18092014_08:49:03,638,它有一个冒号和一个逗号,我没有在格式中指定。请注意,在 iOS 7 中,我从未遇到过此类问题。 这是我正在使用的代码:

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat: @"ddMMyyyy_hhmmss_SSS"];
NSString *dateString = [dateFormat stringFromDate:exportDate];

【问题讨论】:

    标签: nsdate ios8 nsdateformatter


    【解决方案1】:

    iOS8 的时间格式 imo 存在严重问题。我刚刚解决了我的应用程序上的一个错误(我在 iOS7 中从未遇到过)进入设置 -> 常规 -> 日期时间 -> 时间格式,将其从 24 切换到 12,然后再切换回 24,一切都开始工作了再次。

    尝试做我的相同程序,也许它也适合你!

    【讨论】:

    • 感谢您提供有关 24 小时时钟设置的提示。没想到 NSDateFormatter 会尊重这一点!
    【解决方案2】:

    我在 iOS 8 中也遇到了 NSDateFormatter 的问题,不得不为应用构建一个修复版本。你可以read this.它基本上需要覆盖默认语言环境:

    formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
    

    但最好不要将它用于您想向用户展示的格式。希望对您有所帮助!

    【讨论】:

      猜你喜欢
      • 2013-09-07
      • 2023-03-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多