gpt4 book ai didi

c# - 实现非地球日历

转载 作者:IT王子 更新时间:2023-10-29 03:37:36 25 4
gpt4 key购买 nike

当我在寻找另一个问题的解决方案时,我发现自己想知道是否可以使用 .NET 的 Calendar类来实现不基于地球约定的日历。

例如,Mars' day比地球上的一天长约 2.7%:

A convention used by spacecraft lander projects to date has been to keep track of local solar time using a 24 hour "Mars clock" on which the hours, minutes and seconds are 2.7% longer than their standard (Earth) durations.

有什么好的方法可以实现 MarsCalendar,使秒的长度不同于标准的 GregorianCalendar,从而能够使用 DateTime 基于它的所有标准 AddDays()AddHours() 等函数的对象? (注意:理想情况下,一个解决方案——如果存在的话——将适用于任何形式的行星物体,可以为其定义一致长度的“1 天”和“1 年”。火星是一个伟大的不过,例如)

最佳答案

在 Globalization 命名空间(即 JapaneseCalendar)中,有几个从 System.Globalization.Calendar 派生的非公历类。你应该能够实现你自己的。我想制作一个示例,但 Calendar 类中有 16 个抽象方法...

您甚至可以简单地从 GregorianCalendar 派生您的类,然后覆盖 GetMilliseconds(DateTime)方法,返回基数的返回值乘以 1.027d

关于c# - 实现非地球日历,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21940059/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com