java获取时间戳单位秒,如何测试给定的时间戳是以秒或毫秒为单位?「建议收藏」

java获取时间戳单位秒,如何测试给定的时间戳是以秒或毫秒为单位?「建议收藏」Assumeagivenvariable,itiscontainingaUNIXtime-stamp,butwhetheritisinsecondsormillisecondsformatisunknown,IwanttoassigntoavariablewhichisinsecondsformatForExample:unkno…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

java获取时间戳单位秒,如何测试给定的时间戳是以秒或毫秒为单位?「建议收藏」

Assume a given variable, it is containing a UNIX time-stamp, but whether it is in seconds or milliseconds format is unknown, I want to assign to a variable which is in seconds format

For Example:

unknown = 1398494489444 # This is millisecond

t = ???

Updated: I understand it is not possible to tell without giving some limitations, so here is it

current_ts – 86400 * 365 < unknown < current_ts

Assume current_ts = current unix timestamp

解决方案

If you convert the maximum timestamp values with x digits in millis you get something like this:

9999999999999 (13 digits) means Sat Nov 20 2286 17:46:39 UTC

999999999999 (12 digits) means Sun Sep 09 2001 01:46:39 UTC

99999999999 (11 digits) means Sat Mar 03 1973 09:46:39 UTC

Can your timestamps be older than 2001? If not i think you’re safe to check whether the number has 13 digits or more – if yes you have milliseconds, if not you have seconds. Of course this will only work until timestamps in seconds will have 13 digits as well, which means timestamps in milliseconds will have 16 digits:

1000000000000000 (16 digits) means Fri Sep 27 33658 01:46:40 but by then i will be living on a planet from the Alpha Centauri system and time standards will probably have changed a bit :)

P.S. you can loosen up the condition to 12 digits or more, if your timestamps can’t go back further than 1973. The condition should only be ok up until:

100000000000000 (15 digits) means Wed Nov 16 5138 09:46:40

because this in seconds will have 12 digits and will overlap with your condition

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197348.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql基本操作_MySQL创建数据库表

    mysql基本操作_MySQL创建数据库表1、数据库简单来说,所谓的数据库就是存储数据的容器,而且是永久存储的。2、为什么需要数据库3、为什么要学习MySQL数据库最早MySQL数据,瑞典AB公司开发的一款开源型的关系型数据库。随着时间的推移,瑞典AB公司把MySQL数据库转让给Sun公司(Java语言的创始公司)后来,Sun公司经营不善,又把MySQL数据库转让给甲骨文公司(Oracle数据库)4、数

    2022年10月6日
    0
  • Python批量修改文件名,文件再多也只要一秒,省时又不闹心

    Python批量修改文件名,文件再多也只要一秒,省时又不闹心前言嗨喽!大家好,这里是魔王对于电脑中的文件夹啊,我们那是新建一个又一个啊,有时候,我们整理资料的时候就会发现,文件夹那是一个杂乱无章,一个一个的去修改太浪费时间,咋今天就来分享一个小技巧:批量修改文件名一、在原有的名字前中后批量加字随意一点,这是我刚刚新建的文件夹和我存放的路径。我们来看看代码,我都详细注释了。importos#导入模块filename=’C:\\Users\\Administrator\\Desktop\\123’#文件地址list_path=os.l

    2025年7月10日
    0
  • java的动态代理机制详解_java为什么是静态语言

    java的动态代理机制详解_java为什么是静态语言说起java动态代理,在我刚开始学java时对这项技术也是十分困惑,明明可以直接调通的对象方法为什么还要使用动态代理?随着学习的不断深入和工作经验的积累,慢慢的体会并理解了java动态代理机制。昨天再给公司新同事做技术培训时有同学就对动态代理产生了疑问,我这里梳理一遍一并记录一下,方便大家查看对自己也是加深记忆。(1)什么是代理?大道理上讲代理是一种软件设计模式,目的地希望能做到代码重用。具体上讲…

    2022年10月9日
    0
  • java实现快速排序图解_快速排序图文详解

    java实现快速排序图解_快速排序图文详解快速排序快速排序法介绍图解代码理解快速排序法介绍快速排序(QuickSort)是对冒泡排序的一种改进,基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。图解代码理解publicclassQuickSort{//从小到大排序publicvoidquickSort(intleft,intright,

    2022年10月21日
    1
  • 一个对文本内容进行排序的小程序的核心代码

    一个对文本内容进行排序的小程序的核心代码

    2022年3月12日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号