我正在使用 JSoup 从在线论坛阅读文本,并且需要例如过去 24 小时内发布的所有帖子。但是,论坛帖子中的时间戳按以下方式格式化:
“格林威治标准时间 2013 年 8 月 28 日,星期三,凌晨 2:44”
处理以上述方式格式化的时间戳的最佳方法是什么,所以我可以使用它们进行处理 - 如前所述,仅获取过去 24 小时内发布的所有帖子?谢谢!
您可以使用以下语法将字符串解析为日期对象。
Date d = new Date("Wednesday Aug 28, 2013, 02:44 AM GMT");
这将返回日期对象,并通过将其与当前时间进行比较,您可以获得过去 24 小时内发布的帖子。
String input = "Wednesday Aug 28, 2013, 02:44 AM GMT";
SimpleDateFormat sdf = new SimpleDateFormat("EEEE MMM d, yyyy, hh:mm a z");
Date date = sdf.parse(input);
您可能还想看看这个以了解如何使用模式来解析迄今为止的不同字符串。它也有一些样本。
如果格式是固定的,"Wednesday Aug 28, 2013, 02:44 AM GMT"
为什么不使用" "
(空格)作为标记对字符串执行 StringTokeniser。
然后你可以得到一个数组"Wednesday", "Aug", "28,", "2013,", "02:44", "AM", "GMT"
然后,您可以获得必要的元素并在 24 小时内检查。
数组中有一些不需要的字符,但我相信您知道如何删除它们以检查逻辑。