DateTime, the Epoch and DocumentDb
因此,我阅读了这个非常有趣的博客,涉及 Azure DocumentDB中的DateTime .问题是,目前,Azure DocumentDB不支持DateTime字段上的范围搜索.原因是DocumentDB基于JSON,并且没有DateTime类型,因此通常将其放入XML DateTime格式的字符串中. (显然Mongo没有这个问题,它是BSON格式添加DateTime类型(以及其他) ) 无论如何,本文描述了将DateTime存储在JSON中的时代(UNIX)时间,从本质上将DateTime存储为自01-01-1970以来的秒数.一个时代的一个问题是,它不需要leap秒,但我现在可以忍受. 我的问题是,我也想以这种格式存储出生日期.现在,我只能将01-01-1900作为开始日期,然后存储自该日期以来的天数.虽然我很确定这会很好地工作,但感觉就像时代是一个良好的概念,但是生日那个概念就像我在建立自己的惯例一样,这是我通常喜欢避免的. 是否有标准化日期存储为数
0 2024-04-13
编程技术问答社区
我如何在C#中获得历时时间?
可能的重复: 如何在C#中转换epoch时间? 我试图弄清楚如何在C#中获得时期时间.类似于本网站上给出的时间戳: http://www.epochconverter.com/ 日期时间有一种方法吗? 解决方案 TimeSpan t = DateTime.UtcNow - new DateTime(1970, 1, 1); int secondsSinceEpoch = (int)t.TotalSeconds; Console.WriteLine(secondsSinceEpoch);
0 2024-04-11
编程技术问答社区
在C#中计算未来纪元时间
我能够找到示例代码以获取Linux Epoch中当前的时间戳(自1970年1月1日午夜以来的秒),但是我很难找到一个示例,说明如何计算将来的时代是什么,说例如,从现在开始10分钟,我该如何计算Linux Epoch中的未来时间? 解决方案 此扩展方法应完成工作: private static double GetUnixEpoch(this DateTime dateTime) { var unixTime = dateTime.ToUniversalTime() - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); return unixTime.TotalSeconds; } 您可以这样使用: var unixTime1 = DateTime.Now.GetUnixEpoch(); // precisely now var unixTime2 = (DateTime.N
0 2024-04-11
编程技术问答社区
如何在C#中转换纪元时间?
如何将Unix epoch Time 转换为C#的实时时间? (Epoch从1970年1月1日开始) 解决方案 更新2024 in .net core(> = 2.1) DateTime.UnixEpoch.AddSeconds(epochSeconds) DateTime.UnixEpoch.AddMilliseconds(epochMilliseconds) 更新2020 您可以使用DateTimeOffset 进行此操作 DateTimeOffset dateTimeOffset = DateTimeOffset.FromUnixTimeSeconds(epochSeconds); DateTimeOffset dateTimeOffset2 = DateTimeOffset.FromUnixTimeMilliseconds(epochMilliseconds); ,如果您需要DateTime对象而不是DateTimeOffset,则可以调用D
2 2024-04-10
编程技术问答社区
如何将Unix的时间戳转换成DateTime,反之亦然?
有一个示例代码,但随后开始谈论毫秒/纳秒问题. MSDN, 这就是我到目前为止所拥有的: public Double CreatedEpoch { get { DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, 0).ToLocalTime(); TimeSpan span = (this.Created.ToLocalTime() - epoch); return span.TotalSeconds; } set { DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, 0).ToLocalTime(); this.Created = epoch.AddSeconds(value); } } 解决方案 这是您需要的: public static DateTime UnixTimeStampToDateT
0 2024-04-10
编程技术问答社区
给出tm_mday和tm_mon,如何计算tm_day?
我如何将" 2012-03-02"转换为c?的Unix Epoch时间?是否提供了解决方案.但是它使用TM_YDAY而不是TM_MDAY和TM结构的TM_MON. 我的输入是人类可读的日期和时间,所需的输出是Unix时期的时间. int main(int argc, char *argv[]) { char timeString[80] = {"05 07 2021 00 33 51"}; //epoch is 1620347631000 struct tm my_tm = {0}; if(sscanf(timeString, "%d %d %d %d %d %d", &my_tm.tm_mon, &my_tm.tm_mday, &my_tm.tm_year, &my_tm.tm_hour, &my_tm.tm_min, &my_tm.tm_sec)!=6) {
0 2024-04-09
编程技术问答社区
从一个整数的纪元时间值转换为本地时间
我一直被困在从整数时期的时间值转换为当地时间. 我目前有时间存储在整数变量中,我需要一种将其转换为本地时间的方法. 我尝试将其传递到本地时间,但似乎不起作用. 如果我只打电话 ,我可以让本地时间上班 time_t rawtime; struct tm * timeinfo; time ( &rawtime ); timeinfo = localtime ( &rawtime ); 并直接获取原始时间,但是如果我想给localtime()一个整数值,而不仅仅是当前时间. 解决方案 localtime()函数将指针指向const time_t,因此您必须首先将整数时期值转换为time_t localtime.localtime. . int epoch_time = SOME_VALUE; struct tm * timeinfo; /* Conversion to time_t as localtime() expects a ti
0 2024-04-09
编程技术问答社区
如何在C语言(Linux)中将NTP时间转换为Unix Epoch时间
我已经尝试了几个月来基于有人知道如何将NTP时间戳转换为Unix Epoch Timestamp? 语法要执行服务器,例如./server 127.0.0.1:5000和客户端./client 127.0.0.1:5000 语法是针对真实的NTP服务器执行客户端的. ./client 0.se.pool.ntp.org:123 工作代码客户端的示例: #include #include #include #include #include #include #include #include #include #include #include #include #include
6 2024-04-08
编程技术问答社区
将大纪元时间字符串转换为时间
我一直在寻找一种将字符串(以时代时间)转换为日期的方法. 基本上,我需要采取此操作:1360440555(以字符串形式)并将其纳入:Feb 9 12:09 2013. 我一直在看strptime和strftime,但似乎都不对我有用.有什么建议吗? 编辑:谢谢,伙计们.我将其转换为atoi()的int,以time_t的速度施放,然后在上面ran ctime().完美工作! 解决方案 如果您只有在整数而不是字符串中具有该值,则只需调用ctime.如果只有某种方法可以将字符串转换为整数.... time_t c; c = strtoul( "1360440555", NULL, 0 ); ctime( &c ); 其他解决方案 您可以使用 %s(GNU扩展) POSIX TIMESTAMP作为字符串,分解时间为tm: #define _XOPEN_SOURCE #include #include #incl
0 2024-04-06
编程技术问答社区
印刷的时间,以纳秒为单位。
因此,我知道如何在几秒钟内打印时间,显然甚至是毫秒,但是当我尝试纳秒时,我会继续获得整数太小的虚假输出,而且有时会打印出比最后一步小的数字. #include #include int main (void) { long int ns; struct timespec spec; clock_gettime(CLOCK_REALTIME, &spec); ns = spec.tv_nsec;; printf("Current time: %ld nonoseconds since the Epoch\n", ns); return 0; } 例如,从那以后,我得到了35071471纳秒. . 将不胜感激. 解决方案 纳秒部分只是"分数"部分,您也必须添加秒. // otherwise gcc with option -std=c11 complaints #defin
0 2024-04-06
编程技术问答社区
我如何在C语言中获得unix的时间戳作为一个int?
我想获得当前的时间戳,并使用fprintf. 将其打印出来. 解决方案 对于32位系统: fprintf(stdout, "%u\n", (unsigned)time(NULL)); 64位系统: fprintf(stdout, "%lu\n", (unsigned long)time(NULL)); 其他解决方案 只是施放time() 返回的值 #include #include int main(void) { printf("Timestamp: %d\n",(int)time(NULL)); return 0; } 您想要什么? $ gcc -Wall -Wextra -pedantic -std=c99 tstamp.c && ./a.out Timestamp: 1343846167 以自时代以来获得微秒,从C11开始,便携式方法是使用 int timespec
6 2024-04-06
编程技术问答社区
MongoDb ObjectId中的4字节时间戳值会溢出吗?
如果在某个时候,比目前创建的objectid的时代是: ffffffff15580625bcb65364 那么,1秒钟后会创建什么? 是什么? 解决方案 那么,[unix epoch以32位滚动]? 之后会产生什么? 这将取决于特定的实现,其编程语言及其对数学计算的处理. 某些实现和语言在检索自Unix时期以来作为64位整数(今天很常见)以来的秒数时可能会出错用于objectid生成.如果发生这种情况,则驾驶员将停止生成objectids,因此,如果没有其他一代策略提供应用程序,则它可能无法插入文档. . 在其他实现中,时间戳本身可能会滚动到零,这时objectid生成将以很小的时间戳值成功. 其他实现可能会截断(从大多数或最少有意义的一侧),以将其限制为objectid的32位. objectid值本身实际上没有具有准确的时间戳 - 它在集合中必须是唯一的,并且它通常是"增加"护理是否在某个时候包装到零左右. 其他解决方案
0 2024-04-04
编程技术问答社区
严格的JSON $dates可以在MongoDB查询中使用吗?
我正在尝试使用mongodb的严格的JSON表示BSON . 我希望它能在MongoDB Shell(v2.4.3) 中工作 这是我尝试的... 设置:创建一个新文档,其中at 2020年1月1日的日期 > db.myTimes.insert({"at": new Date("2020-01-01")}) 使用非图案查询日期> 2010,没问题: > db.myTimes.find({"at": {"$gt": new Date("2010-01-01")}}) { "_id" : ObjectId([snipped]), "at" : ISODate("2020-01-01T00:00:00Z") } 使用严格的JSON查询,但是... no Dice > db.myTimes.find({"at": {"$gt": {"$date":"2010-01-01T00:00:00Z"}}}) > db.myTimes.find({"at": {"$
0 2024-04-04
编程技术问答社区
Boost:如何从Epoch打印/转换posix_time::ptime的毫秒数?
我很难将posix_time::ptime转换为以time_t或posix_time::milliseconds表示的时间戳,或任何其他可以轻松打印的适当类型(来自时代). 我实际上只需要打印以毫秒为单位的posix_time::ptime表示的时间戳,因此,如果有一种简单的方法可以以这种格式打印,我实际上不需要转换. 解决方案 此代码将自1941-12-07T00:00:00以来打印毫秒数.显然,您可以选择适合您需求的任何时代. void print_ptime_in_ms_from_epoch(const boost::posix_time::ptime& pt) { using boost::posix_time::ptime; using namespace boost::gregorian; std::cout
0 2024-04-02
编程技术问答社区
我在dart中使用BLE,我需要发送9个字节到特定的特性,其中第一个字节是5,其余是epoch。
嗨,我试图将9个字节发送到特定特征,其中首字节为0x05,即5和下一个8个字节,以秒为单位, 我尝试了这个, List timeDataForBLEWrite = [0x5, 0, 0, 0, 0, 0, 0, 0, 0 ]; // here 0 will be replaced by 8 bytes of epoch 要在几秒钟内获得时代,我尝试了 int timestampEpochInSeconds = DateTime.now().millisecondsSinceEpoch ~/ 1000; // 1623331779 要将时期转换为字节,我已经尝试过, List bytes = utf8.encode(timestampEpochInSeconds.toString()); 但是,在这里我获得了10个字节,因为TimestampePochinSeconds是1623331779//10位数字 prin
0 2024-04-01
编程技术问答社区
日期时间到纪元的转换
我有一个bash问题(使用尴尬时).我正在在文本文件中提取第一个和第五列的每个实例,然后将其输送到带有以下代码的新文件中 cut -f4 test170201.rawtxt | awk '/stream_0/ { print $1, $5 }' > testLogFile.txt 这是文件的一部分(test170201.rawtxt)我正在从列Timestamp和Loss, 中提取数据 Timestamp Stream Status Seq Loss Bytes Delay 17/02/01.10:58:25.212577 stream_0 OK 80281 0 1000 38473 17/02/01.10:58:25.213401 stream_0 OK 80282 0 1000 38472 17/02/
0 2024-03-28
编程技术问答社区
在linux bash中把ISO日期转换为自纪元以来的秒数
我有一个ISO格式的日期yyyy-mm-ddthh:ss(例如2014-02-14t12:30).我想在linux bash中仅使用日期命令以来的几秒钟将其转换. 所有日期都涉及UTC语言环境. 我知道这个问题很容易获得重复...关于将日期从一种格式转换为另一种格式的数十亿个问题,但我找不到我的特定方案 谢谢... 解决方案 与GNU日期(来自 gnu coreutils 套件),指定日期以-d和秒为单位以%s> 来解析 $ date -d"2014-02-14T12:30" +%s 1392381000 请注意,这将解释日期被解释为在您的本地时区.如果您希望date使用特定时区域,则必须通过变量TZ(更改date>的默认时区域)或在日期字符串中指定.对于UTC: $ TZ=UTC date -d"2014-02-14T12:30" +%s 1392381000 或在字符串中,根据ISO 8601: $ date -d"2014-02-1
0 2024-03-27
编程技术问答社区
用GAWK将CSV文件中的时间戳转换成纪元
希望使用gawk在CSV文件中将人类可读的时间戳转换为Epoch/Unix时间,以准备将其加载到MySQL DB中. 数据示例: {null};2013-11-26;Text & Device;Location;/file/path/to/;Tuesday, November 26 12:17 PM;1;1385845647 希望在11月26日星期二下午12:17参加第6列,并将其转换为储存时间.显示的所有时间都将以EST格式.我意识到Awk是这样的工具,但似乎无法完全构建命令.目前有: cat FILE_IN.CSV | awk 'BEGIN {FS=OFS=";"}{$6=strftime("%s")} {print}' 但是,这返回: {null};2013-11-26;Text & Device;Location;/file/path/to/;1385848848;1;1385845647 大概,这意味着我正在调用当前的时期时间(执行时138
0 2024-03-22
编程技术问答社区
通过HTTP从历时中获取毫秒数
我正在处理微控制器,不想跟踪系统时钟的时间.我想提出HTTP请求,以从时代(1970)中获得当前时间.我已经知道如何构成所有请求,我只是找不到可以将这些数据返回给我的URL.谁将其作为API?我不想提出https请求. 解决方案 我有一个名为当前Millis 和理论上无限带宽的网站.我想我可以迅速撰写PHP,例如www.currentmillis.com/api/millis-since-epoch.php.这对您来说还可以吗? 更新:它是无限的带宽,但不是无限的资源.因为服务器无法希望将数百万的HTTP请求持续到将时间分配到毫秒到毫秒的服务中,所以URL已停产.现在: http://currentmillis.com/time/time/time/minutes-since-since-since-unix-unix-eminix-unix-epoch . 其他解决方案 $ curl -s http://now.httpbin.org/ {"now": {"epoch
4 2024-03-01
编程技术问答社区
在pyspark中把Unix(Epoch)时间改为本地时间
我在Spark中有一个数据框架,其中包含Unix(Epoch)时间和时区名称.我希望根据不同的TZ名称将时代时间转换为当地时间. 这是我的数据的样子: data = [ (1420088400, 'America/New_York'), (1420088400, 'America/Los_Angeles'), (1510401180, 'America/New_York'), (1510401180, 'America/Los_Angeles')] df = spark.createDataFrame(data, ["epoch_time", "tz_name"]) df.createOrReplaceTempView("df") df1 = spark.sql("""select *, from_unixtime(epoch_time) as gmt_time," from_utc_timestamp(from_u
2 2024-02-29
编程技术问答社区