天道酬勤,学无止境

datetime

如何在bash上为随机数据生成日期范围(How to generate date range for random data on bash)

问题 我需要生成一年中所有天数的字符串 前任: MIN_DATE=01.01.2012 MAX_DATE=31.12.2012 for date in {1...366..1} do echo ... done 回答1 for d in {0..365}; do date -d "2012-01-01 + $d days" +'%d.%m.%Y'; done 回答2 不是纯 bash 解决方案,但我的 dateutils 可以提供帮助: dseq 01.01.2012 31.12.2012 -f %d.%m.%Y -i %d.%m.%Y => 01.01.2012 02.01.2012 ... 31.12.2012 可以使用-f配置输出格式,使用-i配置输入格式。 回答3 使用 ISO 8601 日期格式(年-月-日),您可以按字典顺序比较日期。 这比我想要的要麻烦一些,因为bash没有用于字符串的“<=”运算符。 year=2011 d="$year-01-01" last="$(($year+1))-01-01" while [[ $d < $last ]]; do echo $d d=$(date +%F --date "$d + 1 day") done

2021-12-08 22:48:22    分类:技术分享    bash   date   datetime

如何在两个日期之间循环(How to loop between two dates)

问题 我有一个日历,它将选定的日期作为字符串传递给一个方法。 在此方法中,我想生成从选定的开始日期开始到选定的结束日期结束的所有日期的列表,显然包括其间的所有日期,无论选定的开始日期和结束日期之间有多少天。 下面是获取日期字符串并将它们转换为 DateTime 变量的方法的开头,以便我可以使用 DateTime 计算函数。 但是,我似乎无法弄清楚如何计算开始日期和结束日期之间的所有日期? 显然,第一阶段是从结束日期中减去开始日期,但我无法计算其余步骤。 非常感谢帮助, 亲切的问候。 public void DTCalculations() { List<string> calculatedDates = new List<string>(); string startDate = "2009-07-27"; string endDate = "2009-07-29"; //Convert to DateTime variables DateTime start = DateTime.Parse(startDate); DateTime end = DateTime.Parse(endDate); //Calculate difference between start and end date. TimeSpan difference = end.Subtract(start);

2021-12-08 22:28:48    分类:技术分享    c#   datetime

使用 .NET JavaScriptSerializer.Deserialize 和来自客户端的 DateTime(Using .NET JavaScriptSerializer.Deserialize with DateTime from client)

问题 我正在使用JavaScriptSerializer.Deserialize<>()方法将从客户端收到的 JSON 转换为自定义 C# 类。 该类的属性之一是DateTime 。 目前Deserialize<>()方法抛出一个错误,说 “(我的日期字符串)”不是 DateTime 的有效值。 我尝试使用多种不同的格式发送日期,包括刻度和由各种内置 JavaScript Date() 方法生成的其他格式,但它们都不起作用。 Deserialize<>()方法究竟需要什么格式才能将其解析为 .NET DateTime ? 回答1 你是对的,@friendlycello。 不幸的是, JSON.stringify()从此\/Date(ticks)\/ .Net 序列化器 DateTime 格式中删除了反斜杠。 我编写了一个自定义函数来调整JSON.stringify()的输出,包括这些反斜杠。 所以,我可以保持差不多untoched,仅从更换JSON.stringify()来customJSONstringify()在$.ajax()数据:PARAM。 function customJSONstringify(obj) { return JSON.stringify(obj).replace(/\/Date/g, "\\\/Date").replace(/\)\//g, "\)\\\

2021-12-08 22:12:28    分类:技术分享    javascript   .net   json   date   datetime

自动人类可读的时间间隔[关闭](Automatic human readable time interval [closed])

问题 关闭。 此问题不符合 Stack Overflow 准则。 它目前不接受答案。 想改善这个问题吗? 更新问题,使其成为 Stack Overflow 的主题。 3年前关闭。 改进这个问题 我想以人类可读的格式表达一些时间间隔。 我正在寻找一个能够自动选择正确大小的库的库。 间隔范围从毫秒到数周。 就像是 0.2s 2:00 4天 ... 我知道我可以手动检查参数的大小,然后将其转换,但在重新发明轮子之前,我想问一下是否有(标准)库可以实现这一点。 TimeUnit 进行转换,但不知道参数的大小 Joda-Time Duration 正是我所需要的,但我没有找到太多关于表示的内容(但对于 ReadableDuration 的 ISO8601 格式) 编辑: 我的输入以纳秒为单位,输出如上所述。 回答1 检查PrettyTime PrettyTime 是一个开源时间格式库。 完全可定制,PrettyTime 创建了人类可读的相对时间戳,就像在 Digg、Twitter 和 Facebook 上看到的那样。 很简单,“立即开始”! 超过 18 种语言! 例如 PrettyTime p = new PrettyTime(); System.out.println(p.format(new Date())); //prints: “right now” PrettyTime t =

2021-12-08 21:06:04    分类:技术分享    java   api   date   datetime   time

Django datefield 和 timefield 到 python datetime(Django datefield and timefield to python datetime)

问题 我有一个带有单独的 Datefield 和 Timefield 事件的 Django 模型。 有没有办法将其转换为 python datetime 对象,以便我可以精确查询即将发生的事件? 目前我只得到第二天即将到来的消息。 模型.py event_time = models.TimeField() event_date = models.DateField() 基本上,我可以用一分钟甚至一秒的精确度进行过滤吗? 谢谢你。 回答1 改用DateTimeField (请参阅文档中的此部分)。 Django 自动为您处理转换为datetime.datetime 。 DateField产生一个datetime.date和一个datetime.time对象。 您可以使用replace将这些值合并到更新的date : >>> today = datetime.datetime.today() >>> today datetime.datetime(2012, 3, 31, 11, 6, 5, 182371) >>> time = datetime.time(11, 30) >>> today.replace(hour=time.hour, minute=time.minute) datetime.datetime(2012, 3, 31, 11, 30, 5, 182371) 请注意

2021-12-08 20:12:24    分类:技术分享    python   django   datetime

以这种格式获取日期时间并转换为 4 字节的十六进制(Getting a datetime in this format and converting to 4 byte hex)

问题 我有这种格式的日期时间。 1999-12-31 09:00:00 来自十六进制值: F0C46C38 如何将上述格式的日期时间值转换为 4 字节的十六进制? 我上面发布的价值观是相互补充的。 第二个代码块中的十六进制被反转。 谢谢! 回答1 386CC4F0(十六进制)== 946652400(十进制) 946652400 是 1999-12-31 15:00:00 GMT 的 Unix 时间戳。 import time print hex(int(time.mktime(time.strptime('1999-12-31 15:00:00', '%Y-%m-%d %H:%M:%S'))) - time.timezone) 回答2 #!/usr/bin/env python3 import binascii import struct from datetime import datetime # convert time string into datetime object dt = datetime.strptime('1999-12-31 09:00:00', '%Y-%m-%d %H:%M:%S') # get seconds since Epoch timestamp = dt.timestamp() # assume dt is a local time #

2021-12-08 17:24:22    分类:技术分享    python   datetime   hex

展平交叉时间跨度(Flattening intersecting timespans)

问题 我有很多关于给定 ID 的开始和停止时间的数据,我需要将所有相交和相邻的时间跨度展平为一个组合时间跨度。 下面贴出的样本数据都是同一个ID,所以我没有列出来。 为了让事情更清楚一些,请看一下 03.06.2009 的示例数据: 以下时间跨度重叠或连续,需要合并为一个时间跨度 05:54:48 - 10:00:13 09:26:45 - 09:59:40 生成的时间跨度将从 05:54:48 到 10:00:13。 由于 10:00:13 和 10:12:50 之间存在间隔,因此我们还有以下时间跨度: 10:12:50 - 10:27:25 10:13:12 - 11:14:56 10:27:25 - 10:27:31 10:27:39 - 13:53:38 11:14:56 - 11:15:03 11:15:30 - 14:02:14 13:53:38 - 13:53:43 14:02:14 - 14:02:31 这导致从 10:12:50 到 14:02:31 的一个合并时间跨度,因为它们重叠或相邻。 您将在下面找到我需要的示例数据和扁平化数据。 持续时间列只是提供信息。 任何解决方案 - 无论是 SQL 与否 - 都值得赞赏。 编辑:由于有很多不同且有趣的解决方案,我正在通过添加约束来改进我原来的问题,以查看“最佳”(如果有的话)解决方案的冒泡: 我正在通过 ODBC

2021-12-08 16:41:19    分类:技术分享    sql   sql-server   sql-server-2005   algorithm   datetime

(Django) 如何获得月份名称?((Django) how to get month name?)

问题 我有如下查询: today = datetime.datetime.now() month = today.month print month 它输出: 3 我想显示像“三月”这样的月份名称。 我该怎么办? 回答1 使用日期时间字符串格式化方法,例如 >>> today.strftime('%B') 'March' 有关更多信息和格式代码的完整列表,请参阅 python datetime 文档 回答2 对于英文,可以使用 Python 的 datetime 字符串格式化方法,例如 >>> today.strftime('%B') 'March' 您还可以使用 Django 方法,该方法将返回当前激活语言的名称。 在 Django 模板中,您还可以使用: {{ a_date|date:'F' }} 在 Django 视图函数中: from django.template.defaultfilters import date date(a_date, 'F') 您可以在 Django shell ( python manage.py shell ) 中测试后者,例如西班牙语: In [1]: from django.utils.translation import get_language, activate In [2]: activate('es') In [3]: get

2021-12-08 16:35:40    分类:技术分享    python   django   datetime

PostgreSQL 日期 C# DateTime(PostgreSQL date C# DateTime)

问题 我正在使用此查询将日期插入到表中: DateTime dt = DateTime.Now; String query = "Insert into \"Table1\" (\"tableDate\") values (:date1)"; NpgsqlConnection conn = new NpgsqlConnection(conex.getConnection()); conn.Open(); NpgsqlCommand cmd = new NpgsqlCommand(query, conn); NpgsqlParameter param = new NpgsqlParameter(":date1",NpgsqlTypes.NpgsqlDbType.Date); param.Value = dt.ToShortDateString(); cmd.Parameters.Add(param); // <----------Here i get the error cmd.ExecuteNonQuery(); conn.Close(); 这就是我在表中插入任何其他值的方式并且它有效! 所以一定是日期格式错误什么的,但是我找不到答案。 回答1 不要做 param.Value = dt.ToShortDateString(); 离开 param.Value = dt

2021-12-08 15:48:02    分类:技术分享    c#   postgresql   datetime   insert

ggplot 0.9.0 中 scale_datetime() 的适当时区参数语法是什么(What is the appropriate timezone argument syntax for scale_datetime() in ggplot 0.9.0)

问题 我似乎无法找到有关 ggplot2 0.9.0 文档、0.9.0 转换指南或搜索的信息。 我猜在早期版本中,您会将tz参数添加到scale_x_datetime 。 我试过将tz参数放在scale_x_datetime内的不同位置,但不断出错。 见下文。 我的日期时间数据采用 GMT 时区的POSIXct格式。 当我绘制它时,轴刻度和中断显示我的本地时区 (EST)。 我希望坐标轴上的午夜是格林威治标准时间时区的午夜。 在 ggplot2 0.9.0 中执行此操作的正确方法是什么? attributes(data$date) # $class # [1] "POSIXct" "POSIXt" # $tzone # [1] "GMT" ggplot(data, aes(x = date)) + geom_line(aes(y = count)) + scale_x_datetime(breaks = date_breaks("1 day"), labels = date_format("%d", tz = "UTC")) # Error in date_format("%d", tz = "UTC") : unused argument(s) (tz = "UTC") ggplot(data, aes(x = date)) + geom_line(aes(y = count))

2021-12-08 13:34:45    分类:技术分享    r   datetime   timezone   ggplot2