时间getJulianDay()已被废弃,有哪些方法可以将日期转换为Julian,反之亦然?
我想使用gregoriancalendar而不是时间类,Android文档如何建议,但是如何管理Julian Day作为我的sqllite db中的int作为int? 如何转换此代码? public static long normalizeDate(long startDate) { // normalize the start date to the beginning of the (UTC) day Time time = new Time(); time.set(startDate); int julianDay = Time.getJulianDay(startDate, time.gmtoff); return time.setJulianDay(julianDay); } 当我询问一排时,如何在朱利安·戴(Julian Day)上获得正常日期? 解决方案 如果您只需要将日期转换为整数以保存在数据库中,则
4 2024-02-11
编程技术问答社区
在C#中把DateTime转换成Julian Date(ToOADate安全吗?)
我需要从标准 Gregorian 日期转换为 Julian 天数. 我在C#中没有看到任何记录的直接执行此操作,但是我发现了许多帖子(搜索搜索)建议使用 toadate . tooadate "> tooadate 不建议这样做,作为朱利安日期的有效转换方法. 任何人都可以澄清此功能是否会准确执行转换,也许是将DateTime转换为朱利安格式的字符串的更合适的方法. this 在针对 Wikipedia的Julian Day Page public static long ConvertToJulian(DateTime Date) { int Month = Date.Month; int Day = Date.Day; int Year = Date.Year; if (Month
6 2024-01-02
编程技术问答社区
将JDE Julian日期转换为Gregorian日期
I'm trying to convert JDE dates, and已经积累了大量信息,并认为我会尝试执行SQL转换功能以简化某些任务. 这是我想到的功能,我只称其为" togregorian" CREATE FUNCTION [dbo].[ToGregorian](@julian varchar(6)) RETURNS datetime AS BEGIN DECLARE @datetime datetime SET @datetime = CAST(19+CAST(SUBSTRING(@julian, 1, 1) as int) as varchar(4))+SUBSTRING(@julian, 2,2)+'-01-01' SET @datetime = DATEADD(day, CAST(SUBSTRING(@julian, 4,3) as int)-1, @datetime) RETURN @datetime END 拿一个"
8 2023-10-27
编程技术问答社区
使用javascript将iso8601日期时间字符串映射到朱利安日
任何人都有以下形式的ISO-8601日期时间字符串的紧凑/优雅地图: 2013-12-28T20:30:00-0700 到朱利安日.我希望找到一个避免外部库并具有最小的正则和字符串操纵的解决方案. 解决方案 这是一种方法. 您可以将ISO字符串(也可以带有时区偏移量)转换为现代JavaScript(ES5)中的JavaScript Date对象.这在Node.js,Chrome和Firefox中起作用.它尚未在Safari或IE中得到支持.如果您需要在所有浏览器中使用它,则必须自己分析日期或使用 arment.js.js 之类的库. 我针对对于格里高利(Gregorian)转换之前的日期(1582年10月15日),这是假定的Gregorian日历,并将与美国海军天文台所显示的内容有所不同. function julianDayNumber(d) { var epoch = 2440587.500000; // J
6 2023-10-22
编程技术问答社区
将朱利安时间戳转换成UNIX中的常规时间
我需要使用bash将朱利安时间戳转换为unix的常规时间戳. 在串联OS上,转换非常简单 - 示例: 212186319010244541 $OLSAPP SYSTST 1> #interprettimestamp 212186319010244541 #interprettimestamp 212186319010244541 expanded to: 2455860 2011 10 25 16 10 10 244 541 我希望在Unix环境上做同样的事情.转换将是解析器脚本的一部分.因此,将不胜感激. 更新: 串联上的Interettimestamp Instarm in Instarm函数返回一个九个数字的空间分隔列表,包括朱利安日的数字,年,月,月,日,小时,小时,分钟,第二,毫秒和微秒. . 解决方案 假设该数字是@blahdiblah所说 "自公元前4713年1月1日以来表示微秒数的值." 然后,您首先需要了解19
16 2023-10-22
编程技术问答社区
将 "Julian dates "转换为unixtimestamp并返回到DateTime的问题
今天从事我的项目 - 发现了一个奇怪的错误. 使用symfony/form(5.4.5)组件,发现日期以0001-01-01为0001-01-01,以0000-12-30返回(在Symfony侧). . 所以我进行了一些调查(从symfony/form中获取代码,它正在用日期进行这种转换,并发现了一个非常有趣的事情 - 日期,该日期是在1582年之前(从朱利安(Julian)转移到格里高利(Gregorian)日历),不正确. 下面我放置了代码及其输出的示例. $dateFormat = 2; $timeFormat = -1; $timezone = new \DateTimeZone('UTC'); $calendar = 1; $pattern = 'yyyy-MM-dd'; $dateFormatter = new \IntlDateFormatter(\Locale::getDefault(), $dateFor
6 2023-10-22
编程技术问答社区
将unix的时间戳转换为julian的时间戳
我如何从Unix时间戳(例如1232559922)转换为分数Julian日期(2454853.03150). 我找到了一个网站(/data/docs/juliandate.php )执行类似的计算,但我需要以编程方式进行. 解决方案可以在C/C ++,Python,Perl,Bash等中... 解决方案 Unix时期(零点)是1970年1月1日.对应于2440587.5 的朱利安日 so,在伪代码中: function float getJulianFromUnix( int unixSecs ) { return ( unixSecs / 86400.0 ) + 2440587.5; } 其他解决方案 我知道这是一个旧帖子,但我只是说... Jason Cohen给出的答案是转换的良好近似. 有一个问题与一天之内的秒数有关.一天不长86400秒长,并定期添加到几天中,以使时间与各种可观察的标准同步.这些被称为leap秒( https
26 2023-10-22
编程技术问答社区
如何在Java日历API中使用朱利安日数?
朱利安日的数字是自公元前4713年1月1日中午以来,将时间戳表示为时间戳(和分数日)的连续数量(和分数日). Java 7 SE API不包含对此格式的支持.使用SQLite数据库的开发人员可能使用了Strftime()函数提供的本机朱利安日支持. 表示时间戳为朱利安日的数字包括: 可以将日期和时间表示为原始数据类型(double) 的毫秒精度 一年中的日子比一天中的几秒钟更具体 如果这种精确度不重要,则规避" leap秒"的问题 日期之间的天数是微不足道的.排序优先级很容易确定 非常轻巧 缺点 Java日期/时间API对JDN的 没有内置支持 不适合非常精确的时间测量 仅针对UTC定义,必须从UTC映射到本地时间 不适合向最终用户显示;在显示之前必须转换/格式化 朱利安日的数字通常用于天文学计算中,其定义是高度标准化和接受的.同样,经过修改的朱利安日号(从1858年11月17日午夜UTC计算)也被标准定义和使用在航空航天应用中(请参见 htt
2 2023-10-22
编程技术问答社区
儒略日时间到军事时间R
我想将以下JD时间格式转换为其直觉上解释的军事形式("%h:%m:%s"): R中有功能可以执行此操作吗?关于如何转换为所需的军事时间格式的任何建议("%h:%m:%s")? 解决方案 也许您想要这样的东西(感谢 @dave2e): your_julian [1] "11:18:45" "11:19:45" "11:20:45" "11:21:45" "11:22:45" "11:24:54" 由
2 2023-10-21
编程技术问答社区
将朱利安日期转换为公历日期
我正在撰写LUA的应用程序,该应用程序计算日出/日出,为此,我最初必须将Gregorian日期转换为Julian Days,并从那里进行所有复杂的数学等. . 我已经完成了艰难的数学,但是现在我需要将朱利安日期(2456495.6833865作为一个例子)转换为Gregorian的日期.我发现唯一可以做到这一点的代码只有日,年和一个月,但没有提及时间(我认为这是一天中的一小部分,在这种情况下,小数点之后的数字) 任何帮助都将不胜感激 - 下面的网站具有功能,但我找不到任何代码或方法: http://ssd.jpl.nasa.gov/tc.cgi#top 再次感谢, fyp. 解决方案 这个答案显示了从Unix Timestamp转换为Julian Date的方法.这就是您在lua中做的方式: local julian = (os.time() / 86400) + 2440587.5 print(julian) -- 2456496.1647
4 2023-10-21
编程技术问答社区
如何使用Ruby Date常数GREGORIAN、JULIAN、ENGLAND甚至ITALY
'scuse the the上情况,它们是常数. 我很开心学习Ruby的约会助手. 1.9.3p125 :057 > Date::ABBR_MONTHNAMES => [nil, "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] 1.9.3p125 :058 > Date::ABBR_DAYNAMES => ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"] 1.9.3p125 :059 > Date::MONTHNAMES => [nil, "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"] 1.9.3p125
0 2023-10-21
编程技术问答社区
将儒略日期转换为即时日期
我想从朱利安日期转换为例如,假设时代是我注意到有一个名为因此,有没有一种简单的方法可以使用不同的时代从朱利安日期转换为Java 8 Instant(或其他时间,如果我的想法错了). 解决方案 这是一种使用新Java 8类的解决方案: public class JulianDay { private static final double NANOS_PER_DAY = 24.0 * 60.0 * 60.0 * 1000000000.0; // Calculate Instants for some epochs as defined in Wikipedia. public static final Instant REDUCED_JD = ZonedDateTime.of(1858, 11, 16, 12, 0, 0, 0, ZoneOffset.UTC).toInstant(); public static fi
2 2023-10-21
编程技术问答社区
在SQL中把7位数的Julian Date转换成DateTime?
我在网络上看到了许多示例,这里有一些示例.但是,似乎没有一个适合我的数据.这是一些朱利安日期,其已知转换值. JUL | DateTime 2454522 | 2008-02-25 00:00:00.000 2454571 | 2008-04-14 00:00:00.000 2455713 | 2011-05-31 00:00:00.000 我尝试过这种不起作用的方法: DECLARE @JD int = 2454522 SELECT DATEADD(YEAR, @JD / 1000 - 1900, @JD % 1000 - 1) 它给了我:2455-06-06 00:00:00.000显然是错误的.我在这里想念什么?感谢Ind Advance. 解决方案 应在SQLServer中使用的一种方法: select @jd, dateadd(d,@jd - 2440588,'1970-01-01') sqlfiddle 在这里. 其他解决方案 只
4 2023-09-24
编程技术问答社区
将朱利安日期转换为yyyy-mm-dd
我已经搜寻了很广泛的搜索,但是我似乎找不到将朱利安转换为yyyy-mm-dd的方法. 这是我的朱利安的格式: 朱利安的格式包括本年度,前两位数字以及最后三位数字. 例如,95076是March 17, 1995. 95表示一年 076表示这是一年中的第76天. 15260 我已经尝试过,但它不起作用: dateadd(d,(convert(int,LAST_CHANGED_DATE) % 1000)-1, convert(date,(convert(varchar,convert(int,LAST_CHANGED_DATE) /1000 + 1900) + '/1/1'))) as GrgDate 解决方案 您可以使用datepart() 选择日期的每个部分 SELECT DATEPART(yy, 95076), DATEPART(dy, 95076) +++编辑:我误解了一些东西.这是我的更正:++++ SELECT DATEADD
6 2023-09-23
编程技术问答社区
如何将计算列的数字格式转换为时间(hh:mm:ss)格式,sql查询
首先,我为糟糕的英语感到抱歉,但我会尽可能理解. 我正在尝试制作一个oracle数据库SQL查询,该查询减去两个现有列的日期时间值,我使用下面显示的指令进行了管理如何进行操作,但是我创建的列tempo是用数字格式返回的. SELECT M.NUMOS, M.CODFUNCOS, M.DTINICIOOS, M.DTFIMSEPARACAO, M.DTFIMSEPARACAO - M.DTINICIOOS AS TEMPO FROM PCMOVENDPEND M WHERE DTFIMSEPARACAO IS NOT NULL AND DATA >= SYSDATE-1 输出即将发生. 我需要将列的节奏格式转换为'hh:mm:ss'的时间,如果某些结果通过24小时,它会不断添加32:01:20(就像[HH]:MM:SS一样excel格式). 我尝试了一些诸如下面的指令之类的事情,但它返回 ora-00932错误不一致的数据类型,预期时间和返回的日期julian (
10 2023-09-19
编程技术问答社区
如何在Java中把Julian转换为Date的格式 "yyDHH"
yy = 15(年),d = 150(一年中的一天),HH = 10(小时) Date myDateWrong = new SimpleDateFormat("yyDHH").parse("1515010"); Date myDateTrue = new SimpleDateFormat("yyD").parse("15150"); MyDeTetrue是正确的:2015年5月30日. MyDateWrong必须是30/05/2015 10:00:00,但似乎28/07/2015 18:00:00.这里有什么问题? 解决方案 我要猜测错误的人在一个月(如您指定的那样),然后将其余的数字拿到一个小时(就像它占用其余的数字一样朱利安(Julian)的日期原始格式).因此,您获得了2015年,一月和5010小时.我尚未详细完成计算,但是5010小时将为您提供大约7个月的时间,这将解释在7月结束. 18:00小时只反映了剩下的任何小时. 因此,您需要将DDD用作Jul
62 2023-09-03
编程技术问答社区
R-将 POSIXct 转换为茱莉安日的分数
如何在朱利安日的分数中转换r中的日期/时间对象? 例如,我该如何转到这个日期: date fjday [1] 365.5 朱利安·戴(Julian Day)从1月1日开始计算的一天.分数为0.5表示是下午12点,因此是一天的一半. 这只是一个例子,但是我的真实数据涵盖了2006年的所有365天. 解决方案 由于您所有的日期都来自同年(2006年),这应该很容易: julian(date, origin = as.POSIXct('2006-01-01', tz = 'GMT')) 如果您或其他读者碰巧将数据集扩展到其他年份,那么您可以将每年开始的来源设置为以下几种: sapply(date, function(x) julian(x, origin = as.POSIXct(paste0(format(x, "%Y"),'-
4 2023-07-27
编程技术问答社区
将 "茱莉安日 "转换为 "日/月/年
我的帖子显然不清楚,所以我正在尝试修复它,请随时告诉我我是否还不清楚! 我获得了物理变量的数据框架,每分钟都有一个数据框.我想将4个第一列转换为一个:"%d/%m/%y%h:%m"(gmt)r. Year Julian_day Hour Minute Air_temp Water_temp Rel_hum Wind_int Wind_dir 2012 1 0 0 11.82 4.73 87.2 5.1 310 2012 1 0 1 11.92 4.743 87.2 5 310 2012 1 0 2 11.86 4.748 86.9 4.7 310 解决方案 # This imports your data into a variable named "weather" weather
6 2023-07-27
编程技术问答社区
用 python 计算儒略日期
我正在尝试在Python创建朱利安日期,并进行重大挣扎.那里没有什么像: 那样简单的 jul = juliandate(year,month,day,hour,minute,second) 7月在哪里将是2457152.0(时间随时间变化)? 我已经尝试了JDCAL,但无法弄清楚如何添加时间组件(JDCAL.GCAL2JD()仅接受年,月和每天). 解决方案 您可以使用 - 带有DateTime和数学库的纯Python解决方案. 这是基于此处找到的海军的天文方程式,并使用其自己的计算器进行了验证: http://aa.usno.navy.mil/faq/docs/jd_formula.php import datetime import math def get_julian_datetime(date): """ Convert a datetime object into julian float. Args:
14 2023-07-22
编程技术问答社区
将年月日转换为日期
迄今为止如何将日常转换?例如,2004年第104天的日期是什么? 这是如何在r? 解决方案 我发现@tms 答案 忽略了起源中指定的年份,用实际的年份代替了实际年份您正在执行命令(如@shekeine找到).这样做似乎很好: as.Date(104, origin = "2014-01-01") 注意:在这种情况下,每年为零! 其他解决方案 这就是我这样做的方式: as.Date(104, format = "%j", origin = "1.1.2014") # "2014-04-15" ps:对于那些想知道是否鼓励我的问题的人,请在这里查看: https://meta.stackexchange.com/questions/17463/can-i--i-an-i-an-swer-my-my-my-qure-my-questions-even-even-even-even-even-if-i -knew-the-the-neswer-be-be s
16 2023-07-19
编程技术问答社区