Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.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
Android 将日期转换为firetstore时间戳_Android_Kotlin_Google Cloud Firestore_Timestamp - Fatal编程技术网

Android 将日期转换为firetstore时间戳

Android 将日期转换为firetstore时间戳,android,kotlin,google-cloud-firestore,timestamp,Android,Kotlin,Google Cloud Firestore,Timestamp,我想将日期转换为长秒到Firestore时间戳 object TimeStampConverter { fun convertToTimeStamp(months: Int, year: Int): Date? { val date = Calendar.getInstance() date[Calendar.YEAR] = year // Set the year you want date[Calendar.MONTH] = months return da

我想将日期转换为长秒到Firestore时间戳

object TimeStampConverter {

fun convertToTimeStamp(months: Int, year: Int): Date? {
    val date = Calendar.getInstance()
    date[Calendar.YEAR] = year // Set the year you want
    date[Calendar.MONTH] = months
    return date.time
}}

我想将TimeStampConverter函数返回的date.time转换为Firestore时间戳。

首先,Firestore时间戳是在服务器上生成的,正如Doug Stevenson在他的评论中提到的,它可以存储小到纳秒的时间单位

但是,如果要将年和月转换为Firestore
时间戳
对象,则日、小时、分钟、秒和纳秒组件将始终为0。发生这种情况是因为这些组件根本不存在,因为您只使用年份和月份
0
只是本例中使用的默认值

我作为android想要更新这个firebase时间戳字段,所以我们应该使用哪种数据类型

如有关Firestore的官方文件所述,保存时间和日期的最合适方式是
日期
,如我在以下帖子中的回答所述:


现在,如果要将
时间戳
对象转换为
日期
对象,这意味着将
日期
对象转换为
时间戳
对象时正在缩小转换范围(失去纳秒精度),这意味着正在扩大转换范围。在这种情况下,如前所述,将添加新的精度,并用零填充丢失的数据。

首先,Firestore时间戳在服务器上生成,正如Doug Stevenson在其评论中所述,它可以存储小到纳秒的时间单位

但是,如果要将年和月转换为Firestore
时间戳
对象,则日、小时、分钟、秒和纳秒组件将始终为0。发生这种情况是因为这些组件根本不存在,因为您只使用年份和月份
0
只是本例中使用的默认值

我作为android想要更新这个firebase时间戳字段,所以我们应该使用哪种数据类型

如有关Firestore的官方文件所述,保存时间和日期的最合适方式是
日期
,如我在以下帖子中的回答所述:


现在,如果要将
时间戳
对象转换为
日期
对象,这意味着将
日期
对象转换为
时间戳
对象时正在缩小转换范围(失去纳秒精度),这意味着正在扩大转换范围。在这种情况下,正如前面所提到的,新的精度被添加,丢失的数据被零填充。

如果你只有一年和一个月,那就不太适合时间戳,时间戳表示一个非常特定的时间点,精确到纳秒。好的,让我把你放在这种情况下,我们使用goLang来设置产品列表,每个元素都有一个时间戳字段,我作为android想要更新这个firebase时间戳字段,所以我们应该使用哪种数据类型!我们需要将日期转换为firebase时间戳的其他约束条件是什么!如果你只有一年和一个月,那就不太适合时间戳,时间戳表示时间上的一个非常特定的时刻,精确到纳秒。好吧,让我把你放在这样的情况下,我们使用goLang设置了一个产品列表,每个元素都有一个时间戳字段,我作为android想要更新这个firebase时间戳字段,所以我们应该使用哪种数据类型!我们需要将日期转换为firebase时间戳的其他约束条件是什么!