cocoa - 如何确定我收到的日期格式?

标签 cocoa parsing nsdateformatter date-parsing

在处理从不同客户端发送的各种 JSON 数据时,日期格式标准化是一个真正的问题。

我可能会得到以下任何一个: 2013-10-05
13年2月6日
2013 年 7 月 13 日星期一

有时会有小时、分钟和秒以及时区信息。对于每个客户端,我必须手动设置一个 NSDateFormatter,或者如果无法解析它,我会进行子字符串搜索。我真正想做的是将所有这些组合成一个方法,并以某种方式确定我正在处理哪种类型。然后使用某种 switch 语句来处理该特定日期的解析。

我无法更改它们的格式,但如何更好地处理它们?

最佳答案

这并不完全是您问题的答案,但是当我想在不确定格式的情况下解析日期时,我通常只为日期设置 NSDataDetector。检测器通常会同时检测多种语言和格式的日期。非常简洁。

关于cocoa - 如何确定我收到的日期格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17750447/

相关文章:

objective-c - 列出网络适配器

objective-c - 以二进制形式存储和检索 NSImage 的最佳实践

cocoa - 在 Cocoa 中将 NSString 转换为等值货币的最简单方法

objective-c - 将 Plist (NSString) 解析为 NSDictionary

ios - 来自 UIDatePicker 的工作日

objective-c - 如何使用 iTunes.h/Scripting Bridge 获取专辑中的所有轨道

Python 正则表达式问题 : stripping multi-line comments but maintaining a line break

string - 如何解析/捕获由破折号分隔的字符串?

ios - 用户如何在文本字段 ios 中输入时间

ios - 将 EST 转换为 GMT 显示错误的时间