如何将xml数据解码为人类可读格式
我有一些xml文件已被用作占星术应用程序中的个人数据文件。如何将xml数据解码为人类可读格式
该申请不存在更多,但我仍然需要的数据。打开XML,我有以下:
<BirthDate>2442260.7083333</BirthDate>
在这种情况下
或
<BirthDate>2436617.0375000</BirthDate>
真正的日期是1959年2月17日。 12:54(12:54是生日)。
或
<BirthDate>2446904.4652778</BirthDate>
在这种情况下,真正的约会
是1987年4月18日。 23:10(23:10是生日)。
有没有一种方法来解码这个并获取可读格式的日期/时间?
编码方法确实是基于天(整数部分)和小数部分天数(小数部分),但在过去的历元约6611年。
解码这些日期/时间的最简单方法是使用Excel,并对时期(零点)进行调整。调整为-2415019天。
因此,如果您放置公式
=2436617.0375-2415019
在一个单元格,格式为日期/时间你
2/17/59 00:54
对于其他值的公式
=2446904.4652778-2415019
给日期
4/18/87 11:10
所以我怀疑你给23:10的价值是一个错字。
请注意,计算历元日期(过去是零点时)是没有意义的,因为当时没有使用现代日历。你可以推断,但你必须选择一个日历(朱利安vs格里高利或其他),无论你想出什么(约公元前4595年),对任何事情都没有用处。
这里的一个样品的Excel工作表的屏幕截图
第一列是您的值,第二个是与所述历元偏移调整值,和第三是格式化为日期的第二列/时间。
Excel使用12/31/1899 00:00
作为其时代;也就是说,零值在Excel中呈现为1/0/1900
(本身很奇怪),而值1
给出1/1/1900
。如果你想在代码中进行转换,你可以使用这些知识来调整你正在使用的任何编程库的偏移量。
非常感谢您的努力。我认为问题会以这种方式解决(使用Excel)。 – bonaca
这实际上不是一个XML问题,而是解释一个奇怪的(可能没有记录的)日期表示的问题之一。数字的小数部分是17/24,这表示它可能意味着给定日期的下午5点。 但是,当我们将小数点前的部分解释为日数时,它将基于过去约6687年的日期。这似乎没有太大的意义......
这应该是一个评论,而不是答案 –
我不确定 - 它至少回答了部分问题(如何解码这个数字)。 –
您应该等待OP的澄清。我们只需要一个相应的日期来计算可能的历元和编码。 –
你真的在问XML吗?还是你在想解决这个数字与日期的关系? – Quentin
与该号码对应的日期是多少?有了这些信息,我们可以弄清楚它是如何编码的。 –
@JimGarrison,请参阅我的帖子的更新。 – bonaca