- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
传递给 DateTime 类型构造函数的 Calendar 对象的正确行为是什么?
我有组件年、月和日,如下例所示:
day = 1
month = 5
year = 1433 (which is the current Hijri year)
当使用下面的代码创建一个日期时间对象时,结果是一个有效的 Greg Date
HijriCalendar hijri = new HijriCalendar();
//Get the First Day in the Month
DateTime firstDayInMonth = new DateTime(1433, month, 1, hijri);
使用以下代码生成有效的回历日期:
GregorianCalendar greg = new GregorianCalendar();
//Get the First Day in the Month
DateTime firstDayInMonth = new DateTime(1433, month, 1, greg);
这是正确的结果吗?
最佳答案
您的第一个示例是正确的。 DateTime 不会采用 Hijri 格式,它只是您提供的标准化等价物。关于如何获取 Hirji 日期,请参见以下代码:
HijriCalendar hijri = new HijriCalendar();
DateTime firstDayInMonth = new DateTime(1433, 10, 11, hijri);
Console.WriteLine(hijri.GetEra(firstDayInMonth)); // 1
Console.WriteLine(hijri.GetYear(firstDayInMonth)); // 1433
Console.WriteLine(hijri.GetMonth(firstDayInMonth)); // 10
Console.WriteLine(hijri.GetDayOfMonth(firstDayInMonth)); // 11
您的第二个代码块只是设置公历日期“1/1/1433”,所以当您检查它时,您没有得到 hirji 日期,您只是得到了您在 15 世纪给它的日期。
查看http://msdn.microsoft.com/en-us/library/system.globalization.hijricalendar.aspx看到那里的方法应该可以让您更好地了解应该在日历对象上做什么以及应该在 DateTime 对象上发生什么。
关于c# - Hijri 和 Gregorian DateTime 构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8601725/
对于过去的某个日期,GregorianCalendar.toZonedDateTime() 返回一个休息 1 天的日期。 对于 1893 年 4 月 2 日,toZonedDateTime() 返回相
Boost 文档说明如下:“内部 boost::gregorian::date 存储为 32 位整数类型。” .我从链接中找到了这个:http://www.boost.org/doc/libs/1_5
在 Boost 日期时间库中,是否有将月份短字符串(例如 Jan、Feb、Mar、Apr)转换为 boost::gregorian::greg_month 类型的实用函数?该库的文档不是很好,我在标题
你好,我有两个字符串: entertime "2014-03-06T09:35:36Z" exittime "2014-03-06T09:38:36Z" 我希望能够返回差值,在本例中应该返回 3 分钟
这是我的代码。我希望输出“2016-03-15”。但在我的 Ubuntu 14.04、g++ (Ubuntu 4.8.4-2ubuntu1~14.04.1) 4.8.4、eclipse 调试环境中的代
我有以下 std::string '2010-08-10T23:59:00' 我需要将它转换为 boost::gregorian::date 对象。 我知道我应该使用 boost::date_time
我需要编写一个函数,将儒略日期(年、年中的第几天、一天中的小时和分钟)转换为标准形式(年、月、月中的日期、一天中的小时和分钟)并将其表示为一个字符串。我想肯定有人已经编写了一个库或组件,可以将年中的日
目前看来 boost::gregorian::date 只有日/月/年。我还需要存储小时/分钟/秒。这个对象可以处理两者吗?我很难理解如何表示所有这些数据。 最佳答案 不,这个对象不能处理那个(因为
我有一个关于从格式化字符串中读取 boost::gregorian::date 对象的问题。当输入字符串具有指定的格式时,它会按预期工作。例如,下面的代码 std::string fmt = "%Y-
传递给 DateTime 类型构造函数的 Calendar 对象的正确行为是什么? 我有组件年、月和日,如下例所示: day = 1 month = 5 year = 1433 (which is t
我正在使用 boost::gregorian 执行日期计算。我想按照示例使用 add_month(当前版本为 1.63 http://www.boost.org/doc/libs/1_63_0/doc
来自关于 boost::gregorian::date 类的 boost 文档 here : "Internally boost::gregorian::date is stored as a 32
我正在尝试将回历日期转换为我关注的公历日期 this文章和我的代码如下: var cultureInfo = CultureInfo.CreateSpecificCulture("ar-sa"); s
有没有办法将 boost::date_duration 转换为 double。我有以下代码: date be; date bd; days t = (be - bd); std::cout #inc
我有一个 GUI,它有两个组合框和一个用于输入用户 Hijiri 出生日期的文本字段。我想将那个 Hijiri 日期转换为公历日期...我发现的每个解决方案要么很复杂要么不起作用..我什至检查了 Jo
我正在使用 boost 库,并且只会使用 int : 但我收到错误: cannot convert »boost::gregorian::date_duration« to »int 我能做什么?请帮
我尝试以这种方式将 std::string 转换为 boost::gregorian::date: #include #include "boost/date_time/gregorian/greg
这个问题在这里已经有了答案: Date change when converting from XMLGregorianCalendar to Calendar (2 个答案) 关闭 5 年前。 我
我可以在 VS 的调试器中看到,boost::gregorian::date 变量包含一个成员 days_ 为 2465846. 有没有办法在纸上或 Excel 上将其转换为 dd/mm/yy? 最佳
简要背景: 我正在尝试使用 QCustomPlot 绘制股票的烛台图1.3 版测试版。我跳过了库的代码,发现对于时间序列,它使用了 type-def (qcustomplot.h:line 3140)
我是一名优秀的程序员,十分优秀!