Firebase获取服务器时间戳返回错误值

时间:2018-09-02 19:29:13

标签: javascript firebase firebase-realtime-database google-cloud-functions

我想获取Firebase Server当前时间作为时间戳,但是返回的值错误。服务器返回一个时间戳= 1535916111663,如果我们将该时间戳转换为日期,我将在50:3月30日得到21:21:03

注意:我正在使用Firebase Cloud功能。

import java.util.Scanner;

public class PokerHands 
{
    public static void main(String args[])
    {
        System.out.println(containsPair(welcome()));
    } // end main

    private static int[] welcome()
    {
        Scanner read = new Scanner(System.in);
        int[] poker_array = new int[5];

        System.out.println("Enter five numeric cards, no face cards. Use 2-9: ");
        for (int i = 0; i < 5; i++) {
            System.out.printf("Card %d: ", i + 1);
            int nums = read.nextInt();
            while (nums < 2 || nums > 9) {
            System.out.println("Wrong input. Choose from 2-9 only: ");
            nums = read.nextInt();
            } // end while
        poker_array[i] = nums;
        }

        for (int i = 0; i < poker_array.length; i++) {
            System.out.print(poker_array[i] + ", ");
        }

        return poker_array;
    } // end welcome()

    private static boolean containsPair(int hand[])
    {
        for (int i = 0; i < hand.length; i++) {
            for (int j = 0; j < hand.length; j++) {
                if (hand[i] == hand[j]) {
                    return true;
                } // end if
            } // end inner for
        } // end outer for

        return false;
    } // end containsPair()
} //end class

1 个答案:

答案 0 :(得分:3)

无论您使用什么时间戳将该时间戳转换为日期,它都将值解释为自unix时代以来的秒数。但是,自unix时代以来,您获得的值实际上是用毫秒来衡量的。您将需要使用一种转换工具,该工具会将以毫秒为单位的时间戳转换为日期。

如果将值复制粘贴到this tool中,它将自动以毫秒为单位。您在上方提供的值“ 1535916111663”将转换为“格林尼治标准时间:2018年9月2日,星期日,7:21:51.663 PM”