Datetime 将历元时间戳转换为日期格式
我有一个Datetime 将历元时间戳转换为日期格式,datetime,time,epoch,Datetime,Time,Epoch,我有一个.json文件,其中包含大量文档,每个文档如下所示: {"_id":{"$oid":"54ff56116d"},"caption":{"created_time":"1421434541",....} 我需要在我的每个文档中将创建的时间转换为日期格式 你知道吗?因为你有10位数字作为创建的时间,你可能在使用“Unix时间戳”,它从纪元开始计算秒数,即1970-01-01 00:00:00+00:00(1970年1月1日凌晨UTC或GMT时区的午夜)。如果您有13位数字,那么可能是从Ja
.json
文件,其中包含大量文档,每个文档如下所示:
{"_id":{"$oid":"54ff56116d"},"caption":{"created_time":"1421434541",....}
我需要在我的每个文档中将创建的时间转换为日期格式
你知道吗?因为你有10位数字作为创建的时间,你可能在使用“Unix时间戳”,它从纪元开始计算秒数,即1970-01-01 00:00:00+00:00(1970年1月1日凌晨UTC或GMT时区的午夜)。如果您有13位数字,那么可能是从Java中使用的纪元开始的毫秒数。还有其他系统,但这是一个似是而非的猜测 有很多函数系统可以将这些值转换为日期。我有一个使用标准库函数的C程序,用于验证您的日期:
$ timestamp 1421434541
1421434541 = Fri Jan 16 10:55:41 2015
$ timestamp -u 1421434541
1421434541 = Fri Jan 16 18:55:41 2015
$ timestamp -T '%Y-%m-%d %H:%M:%S' -u 1421434541
1421434541 = 2015-01-16 18:55:41
$
(当地时区:美国/太平洋,又名美国/洛杉矶)
程序使用strtol()
将字符串中的数字转换为long
,然后使用localtime()
或gmtime()
将其分解为struct tm
,然后使用strftime()
格式化结果
GNUdate
命令也可以用来做这些事情:
$ /usr/gnu/bin/date -d @1421434541 +'%Y-%m-%d %H:%M:%S'
2015-01-16 10:55:41
$
因为您还没有确定您的宿主语言,所以实际上不可能告诉您使用什么。不过,无论您选择何种语言,都可以保证有代码来处理转换。因为您有10位数字作为创建时间,所以您可能使用了“Unix时间戳”,它从1970-01-01 00:00+00:00开始计算秒数(1970年1月1日凌晨UTC或GMT时区的午夜)。如果您有13位数字,则可能是从Java中使用的历元开始的毫秒数。还有其他系统,但这是一个合理的猜测 有很多函数系统可以将这些值转换为日期。我有一个C程序,使用标准库函数来验证日期:
$ timestamp 1421434541
1421434541 = Fri Jan 16 10:55:41 2015
$ timestamp -u 1421434541
1421434541 = Fri Jan 16 18:55:41 2015
$ timestamp -T '%Y-%m-%d %H:%M:%S' -u 1421434541
1421434541 = 2015-01-16 18:55:41
$
(当地时区:美国/太平洋,又名美国/洛杉矶)
程序使用strtol()
将字符串中的数字转换为long
,然后使用localtime()
或gmtime()
将其分解为struct tm
,然后使用strftime()
格式化结果
GNUdate
命令也可以用来做这些事情:
$ /usr/gnu/bin/date -d @1421434541 +'%Y-%m-%d %H:%M:%S'
2015-01-16 10:55:41
$
由于您尚未确定您的主机语言,因此实际上无法告诉您要使用什么。不过,无论您选择何种语言,都可以保证有代码可用于处理转换。谢谢,我没有任何特定的主机语言,但我的操作系统是Linux。我的主要问题是如何为100000用户执行转换行?我不能一行一行地做,你怎么能避免一行一行地做呢?你必须读10万行(或一行10万条)并在找到时或找到后使用JSON库处理每一个。您没有指定所使用的语言的任何内容,因此很难为您提供太多帮助。GNU
date
一次处理一个日期/时间。Mytimestamp
可以接受您传递给它的任意多个字符串-您的O/S可能会阻止我不要一次处理它们,但你可以在一次调用中处理数千行。你需要的信息不仅仅是时间……但你没有说什么。谢谢你的回答!这对我很有帮助,我没有任何特定的主机语言,但我的操作系统是Linux。我的主要问题是如何处理100000行?我不能一行一行地处理,你怎么能避免一个接一个地做呢?你必须阅读100000行(或一行100000条)并在找到时或找到后使用JSON库处理每一个。您没有指定所使用的语言的任何内容,因此很难为您提供太多帮助。GNUdate
一次处理一个日期/时间。Mytimestamp
可以接受您传递给它的任意多个字符串-您的O/S可能会阻止我不要一次处理它们,但你可以在一次调用中处理数千行。你需要的信息不仅仅是时间……但你没有说什么。谢谢你的回答!这对我很有帮助,我没有任何特定的主机语言,但我的操作系统是Linux。我的主要问题是如何处理100000行?我不能一行一行地处理,你怎么能避免一个接一个地做呢?你必须阅读100000行(或一行100000条)并在找到时或找到后使用JSON库处理每一个。您没有指定所使用的语言的任何内容,因此很难为您提供太多帮助。GNUdate
一次处理一个日期/时间。Mytimestamp
可以接受您传递给它的任意多个字符串-您的O/S可能会阻止我I don’我不能一次处理它们,但你可以在一次调用中处理数千次。你需要的信息不仅仅是时间……但你还没有说什么。谢谢你的回答!它帮助了我