Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
计算两个unix时间戳的时间差,并在Java中转换为分钟_Java_Unix - Fatal编程技术网

计算两个unix时间戳的时间差,并在Java中转换为分钟

计算两个unix时间戳的时间差,并在Java中转换为分钟,java,unix,Java,Unix,我有两个UNIX时间戳,我想比较它们,然后以分钟为单位得出差异 例如,1418600222和1418602180,其中1418602180-1418600222在几分钟内给我一个答案。我试着用谷歌搜索它,但大多数结果都是在javascript中,我对它的理解相当有限。看看java.util.concurrent.TimeUnit java.util.concurrent.TimeUnit#SECONDS.toMinutes() 看看java.util.concurrent.TimeUnit j

我有两个UNIX时间戳,我想比较它们,然后以分钟为单位得出差异


例如,
1418600222和1418602180
,其中
1418602180-1418600222
在几分钟内给我一个答案。我试着用谷歌搜索它,但大多数结果都是在
javascript
中,我对它的理解相当有限。

看看java.util.concurrent.TimeUnit

java.util.concurrent.TimeUnit#SECONDS.toMinutes()

看看java.util.concurrent.TimeUnit

java.util.concurrent.TimeUnit#SECONDS.toMinutes()
试试这个

public class tets {
public static void main(String args[])
{
    long timeStamp= 1418602180 - 1418600222;
    java.util.Date time=new java.util.Date(timeStamp*1000);
    System.out.println(time.getMinutes());
}
}
输出2

更新

在我前面的示例中,我使用了不推荐使用的方法。您可以使用joda时间,如下所示

LocalDateTime d1=new LocalDateTime(new Date(1418602180 *1000));
    LocalDateTime d2=new LocalDateTime(new Date(1418600222*1000));

    System.out.println(d1);
    System.out.println(d2);
    int minutesDiff=Minutes.minutesBetween(d2, d1).getMinutes();
    System.out.println(minutesDiff);
试试这个

public class tets {
public static void main(String args[])
{
    long timeStamp= 1418602180 - 1418600222;
    java.util.Date time=new java.util.Date(timeStamp*1000);
    System.out.println(time.getMinutes());
}
}
输出2

更新

在我前面的示例中,我使用了不推荐使用的方法。您可以使用joda时间,如下所示

LocalDateTime d1=new LocalDateTime(new Date(1418602180 *1000));
    LocalDateTime d2=new LocalDateTime(new Date(1418600222*1000));

    System.out.println(d1);
    System.out.println(d2);
    int minutesDiff=Minutes.minutesBetween(d2, d1).getMinutes();
    System.out.println(minutesDiff);
Unix时间戳(也称为历元时间)只是从1970-01-01的00:00:00开始的秒数

假设它是一个数字,您可以像计算任何其他数字一样计算差值。您将在几秒钟内得到差异。将其除以60,以分钟为单位得出差值

你的例子是:

1418602180 is 2014-12-15 00:09:40 GMT
1418600222 is 2014-12-14 23:37:02 GMT

difference is 1418602180 - 1418600222 = 1958 seconds
1958 / 60 = 32.6333 minutes
Unix时间戳(也称为历元时间)只是从1970-01-01的00:00:00开始的秒数

假设它是一个数字,您可以像计算任何其他数字一样计算差值。您将在几秒钟内得到差异。将其除以60,以分钟为单位得出差值

你的例子是:

1418602180 is 2014-12-15 00:09:40 GMT
1418600222 is 2014-12-14 23:37:02 GMT

difference is 1418602180 - 1418600222 = 1958 seconds
1958 / 60 = 32.6333 minutes

仅供参考,Java和JavaScript完全不同。@Manu是的,我知道,但我会说有些时候逻辑可以非常相似老实说,在Java 8或JodaTimeJust中使用新的日期/时间API。仅供参考,Java和JavaScript完全不同。@Manu是的,我知道,但我会说有些时候逻辑可以非常相似老实说,在Java 8或JodaTimeI中使用新的日期/时间API我怀疑,如果差异大于59分钟,将给出准确的结果我怀疑,如果差异大于59分钟,将给出准确的结果我怀疑,如果差异大于59分钟,根据问题的内容,将给出最简单的结果。如果OP想要做更多实质性的事情,我会使用日期/时间API或JodaTimeHank!只需要这样一个简单的解决方案:-)干杯+1为最简单的基于什么的问题。如果OP想要做更多实质性的事情,我会使用日期/时间API或JodaTimeHank!只需要这样一个简单的解决方案:-)干杯