【问题标题】:Is there some functionality in Cocoa to display time intervals in natural language?Cocoa 中是否有一些功能可以用自然语言显示时间间隔?
【发布时间】:2010-02-02 00:16:00
【问题描述】:

我正在搜索的是一个可以用自然语言显示时间间隔的 Cocoa(或第三方)类,例如:

  • 10 秒前
  • 1 小时前
  • 2 天前

你知道什么可以帮助我完成这项任务,而不是自己写它并融入 if-else 地狱吗?

【问题讨论】:

    标签: objective-c cocoa date frameworks nlp


    【解决方案1】:

    我最初指出的那个似乎不再存在,但正如指出的那样,NSDate-TimeAgo,我没有尝试过,但对我来说看起来不错。

    编辑:更新答案以指向现有代码

    【讨论】:

    【解决方案2】:

    您对 Cocoa 的问题与 this question for Cocoa Touch 相同,该问题的答案也适用于您,因为它使用了 Foundation,它在 Cocoa 和 Cocoa Touch 中都有。

    【讨论】:

    • 你并没有真正回答我的问题。您提到的线程中的所有建议解决方案仍然必须处理几个 if-else 语句。不过还是谢谢你指出这个话题。
    • 无论如何,if (component != 0) /*add component to string*/ 语句必须在某处;这是怎么回事?如果这不是您在谈论的内容,那么您在谈论什么 if 语句?
    • 我只是搜索了为我做这件事的第三方东西,所以我不必这样做。
    【解决方案3】:

    -[NSDateFormatter setDoesRelativeDateFormatting:]

    【讨论】:

    • 只提供非常有限的选项
    • 嗯,回想一下,您还可以使用 NSDateFormatter API 的其余部分。我看到的主要限制是它总是相对于当前日期进行格式化。
    【解决方案4】:

    我真的可以推荐 Mattt Thompson 的 TTTTimeIntervalFormatter - 非常干净,非常实用(同一个 repo 中有很多其他超级有用的点点滴滴)。

    【讨论】:

      猜你喜欢
      • 2022-11-04
      • 2012-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多