问题标签 [localtime]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2896 浏览

c - C:如何在特定时区(按偏移量)打印特定的“时间”值?

我正在用 C 编写一个应用程序,它解析由外部程序记录的数据文件(我无法控制)。它存储二进制数据,其中一个字段是标准 UNIX“纪元”格式的时间(自 1970 年 1 月 1 日以来的秒数,UTC)。

另一个字段是时区,存储为与 UTC 的秒数偏移量。

很酷,我已经拥有了创建一个日期/时间字符串所需的一切,该字符串表示它记录在的时区中的该信息,对吧?嗯......似乎不是这样,和/或我不知道该怎么做。

我把事情归结为一个相当简单的测试用例:

当我在 MacOS X 10.6 上运行它时,我得到:

我所期望的(实际上是在 Linux 机器上得到的)将是:

我是否需要更改TZ环境变量(可能还有 call tzset)?似乎应该有一种方法来操纵数据结构并获得正确的东西,但上面肯定行不通(无论如何,在 MacOS X 10.6 上——在 Linux 上工作得很好)。

作为一种解决方法,我想我可以从格式字符串中删除 %z 并自己创建该部分。

不过,理想情况下,我希望修改 mystruct tm或其他一些我可以使用的函数调用(如 strftime,但带有额外的参数或其他东西,或者可能是 localtime 的替代形式),这将让事情做正确的事。

由于 Linux 似乎表现良好(即使在那里,上述解决方案也不是很理想,因为我在捏造我的time_t价值;我更喜欢有一个参数来改变struct tm计算的方式),这是我应该报告的吗作为针对 MacOS 的错误?

或者,我可以调用一组不同的库例程,即使最终需要第三方(我想是来自 GNU 的人)库?尽管我会考虑使用 ObjC 或 C++ 选项,但我更愿意继续使用 C。

0 投票
11 回答
556126 浏览

c - 在 C 中获取当前时间

我想获取系统的当前时间。为此,我在 C 中使用以下代码:

问题是这段代码给出了一些随机时间。而且,随机时间每次都不一样。我想要我的系统的当前时间。

0 投票
9 回答
15591 浏览

java - Joda Time LocalTime of 24:00 end-of-day

我们正在创建一个日程安排应用程序,我们需要表示某人在白天的可用日程安排,无论他们在哪个时区。从 Joda Time 的间隔中得到提示,它表示两个实例之间的绝对时间间隔(包括开始,结束独占),我们创建了一个LocalInterval。LocalInterval 由两个 LocalTime 组成(开始包含,结束排除),我们甚至制作了一个方便的类来在 Hibernate 中持久化它。

例如,如果某人从下午 1:00 到下午 5:00 有空,我们将创建:

到目前为止一切顺利——直到有人想在某天晚上 11:00 到午夜有空。由于间隔的结束是排他的,这应该很容易表示为:

确认!不去。这会引发异常,因为 LocalTime 不能容纳任何大于 23 的小时。

这对我来说似乎是一个设计缺陷——Joda 没有考虑到有人可能想要一个代表非包容性端点的 LocalTime。

这真的很令人沮丧,因为它在我们创建的一个非常优雅的模型上打了一个洞。

我有什么选择——除了分叉 Joda 并取出 24 小时的支票?(不,我不喜欢使用虚拟值——比如 23:59:59——来表示 24:00。)

更新:对于那些一直说没有 24:00 这样的事情的人,这里引用 ISO 8601-2004 4.2.3 注释 2,3:“一个日历日的结束 [24:00] 恰逢 [00] :00] 在下一个日历日的开始......”和“[hh] 具有值 [24] 的表示只首选表示时间间隔的结束......”

0 投票
1 回答
5080 浏览

c++ - 使用 gettimeofday 和 localtime 的准确时间戳

我正在尝试通过 gettimeoday 和 localtime 监视跨多个应用程序和数据路径的系统时间。在这个例子中,我想在我的代码运行之前获取系统时间(微秒精度)。我目前正在这样做:

据我了解,本地时间调用肯定会产生一些开销,并且会降低准确性。我可能完全错了,但我应该等到我的代码完成后才调用本地时间吗?我假设 localtime 只是对 gettimeofday 的结果进行半昂贵的转换,因此它应该放在 printf 语句之前。

0 投票
3 回答
2429 浏览

python - Python中的时间不一致

我在跨平台程序中遇到了一些问题:当我在 Linux 和 Windows 中打开 python shell 时,我从 Epoch 获得的时间不同。

在 Linux 中,我试图做dpkg-reconfigure tzdata.

目前,在linux中我得到了 avec dpkg-reconfigure tzdata:

然后,在 python 控制台中,我创建了这个脚本:

在返回的 linux 上:

在返回的 Windows 上:

然后我尝试了这个脚本:

Linux 中返回的第一行是:

Windows 中返回的第一行是:

所以在 Windows 中,我们从 1970 年获得日期,而在 Linux 中,它从 1972 年开始!

然后,如果我在我的 bash 控制台中写下它:

我明白了:

如您所见,我们看不到 1970 年的任何东西!

如何将 Debian 的时区更改为我自己的时区!?

旧消息: 我在跨平台程序中面临一些问题:当我在 Linux 和 Windows 中打开 python shell 时,我从 Epoch 获得的时间不同。

在 linux 中(debian 挤压):

在 Windows(7 64 位专业版)中:

如您所见,有一个小时的差异。为什么?



感谢您的回答,这就是我当时所做的:在 Windows 中:

在 Linux 中:

如果我不知道为什么会出现问题,我不想使用 gmtime。我尝试更改 Linux 中的时间以使其与 Windows 中的时间相同(我开始在 Windows 中开发我的软件并且它运行良好,这就是为什么我想在 Linux 中更改系统时间而不是在 Windows 中)。在 Linux 中,我试图做dpkg-reconfigure tzdata. 但无论我选择的时间仍然是错误的。

目前,在linux中我得到了 avec dpkg-reconfigure tzdata:

我不明白在 Windows 中使用了哪个时间。我正在使用“UTC”。



我创建了这个脚本:

在返回的 linux 上:

在返回的 Windows 上:

正如你所看到的,自纪元以来仍然存在时间问题(纪元是凌晨 1 点......)



我创建了另一个主题,因为它似乎不再是由于 python: Timezone issues

0 投票
2 回答
5088 浏览

perl - Perl:如何将 unix 时间戳+时区转换为本地时间

基本问题在标题中:我有一个 unix 时间戳和一个时区,例如“美国/加拉加斯”,我想将其转换为时区的本地时间。

通过stackoverflow搜索,我发现其他人问了几乎相同的问题,但是,提供的答案代码

不起作用(不再?)。DateTime() 不允许我设置时间戳;我确实查看了 DateTime 源,但也没有看到我可以在哪里连接我自己的时间戳。有什么想法/帮助吗?

提前谢谢了!

0 投票
1 回答
192 浏览

java - Java(处理环境)不会为我提供当地时间

我正在尝试根据当地时区调整 epoc 时间(即 GMT-7,但它显示 GMT)。我很确定这应该有效,但它不是......

但它仍然输出基于 GMT 的 epoc 时间,而不是 GMT-7(我的时区)。在玩了一段时间后,我确实让这个工作......

但是为什么第一个块不起作用?

0 投票
1 回答
3848 浏览

actionscript-3 - 从 ActionScript 3 中的 UTC 日期时间获取本地时间

AS3 是否有办法将日期时间变量转换为本地时间?

0 投票
11 回答
11054 浏览

python - 获取本地时区的 Olson TZ 名称?

如何获取与C调用给出的值相对应的Olson 时区名称(例如)?Australia/Sydneylocaltime

这是TZ通过符号链接或在与时间相关的系统配置文件中/etc/localtime设置变量覆盖的值。TIMEZONE

0 投票
2 回答
2802 浏览

actionscript-3 - UTC 时间到 AS3 中的 GMT+2

我有问题。使用Date()AS3 本身提供的功能,我将 UTC 时间转换为本地机器时间。

我遇到的问题是这个,看看monthand hour

这可能是因为夏令时,但我认为日期操作的本机函数考虑到了这一点。

我是对的,这就是问题所在?我应该自己考虑夏令时吗?还是有什么不同?