首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >前一天的Clojure Unix时间戳

前一天的Clojure Unix时间戳
EN

Stack Overflow用户
提问于 2013-10-01 20:29:34
回答 1查看 221关注 0票数 1
代码语言:javascript
复制
(defn todaydate [& props]
(let [
tester(str "")
tester (let [today (Date.)]
   (.getTime today))

上面的这段代码返回当天的unix时间戳。我希望能够使用tester获取前一天的unix时间戳。

我无法使用clj-time库来解决此问题

EN

回答 1

Stack Overflow用户

发布于 2013-10-01 21:03:34

您将希望使用java.util.Calendar,添加负一天,然后使用getTimeInMillis除以1000来获得时间戳。

以下代码将为您提供昨天午夜的unix时间戳。

代码语言:javascript
复制
(let [yesterday (doto (GregorianCalendar. (TimeZone/getTimeZone "UTC"))
                  (.set Calendar/HOUR_OF_DAY, 0)
                  (.set Calendar/MINUTE 0)
                  (.set Calendar/SECOND 0)
                  (.set Calendar/MILLISECOND 0)
                  (.add Calendar/DAY_OF_YEAR -1))]
  (/ (.getTimeInMillis yesterday) 1000))

注意:要小心你使用的时区。

此外,如果你只是需要一些快速的东西,你可以从你拥有的值中减去一天中的秒数。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19116193

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档