草庐IT

Datetime

全部标签

c# - TimeZoneInfo 是否考虑 DST?

在时区之间转换时,C#是否考虑夏令时?我有一个源日期是伦敦当前时间,我想将其转换为我的时区(CET)。这是我正在使用的代码。DateTimetime=DateTime.ParseExact(timeString,"HH:mm",null);time=DateTime.SpecifyKind(time,DateTimeKind.Unspecified);//Convertittotherighttimezone.ItiscurrentlyinGMTTimeZoneInfogmt=TimeZoneInfo.FindSystemTimeZoneById("GMTStandardTime");

c# - 本地化日期范围

有谁知道如何使用C#本地化日期范围?特别是,我想生成“智能”日期范围,以便消除冗余信息。这里有一些美国英语的例子2009年8月-9月2009年8月2009年8月1日至9日2009年1月1日-3月3日2009年12月6日-2010年1月8日据我所知,.NETFramework支持本地化日期,但不支持日期范围。对于CultureInfo支持的Windows语言环境,使用System.Globalization.DateTimeFormatInfo中的信息,我能够弄清楚(大部分时间)如何处理项目#1和#2。项目#2只是DateTime.ToString(DateTimeFormatInfo.

c# - 将 Xamarin Forms 中的 DateTime 格式化为设备格式字符串

在运行PCLXamarin.Forms项目并且我的部署目标包括iOS、Android和Windows时,如何将DateTime对象格式化为设备默认日期时间格式的字符串。根据此thread,DateTime.ToShortString()无法按照MSDN要求工作还有这个bug.是否有任何基于表单的解决方案,或者我是否需要从特定于平台的项目中获取它?对于Android,我可以使用DI从native项目执行以下操作:Stringformat=Settings.System.GetString(this.context.ContentResolver,Settings.System.DateF

c# - .NET AddDays 问题

接下来的两行将相同的金额添加到相同的日期,结果日期部分相同,但不知何故时间部分有所不同!(newDateTime(2000,1,3,18,0,0)).AddDays(4535);(newDateTime(2000,1,3,18,0,0)).AddMonths(149);你会得到15秒的差异,并且两者至少可以舍入到几天,我不知道为什么会发生这种情况,但它只发生在AddDays上,而不是AddMonths(即使添加了数千个月)编辑1所以我尝试制作一个示例项目,但没有成功。如果我运行我的主项目,并将示例线放入watch,那么我会得到2个独立的值,如果我重新开始,问题就不存在了。该项目是3.5

c# - DateTime.ParseExact 具有 7 位数字/一位或两位数字的月份

到现在为止,我认为我会理解DateTime.ParseExact的工作原理,但这令人困惑。为什么下一行返回false?DateTime.TryParseExact("2013122","yyyyMdd",CultureInfo.InvariantCulture,System.Globalization.DateTimeStyles.None,outlastUpdate)月份也可以有两位数。我认为它应该能够理解它意味着2013年1月22日。为什么我走错了路?我是否遗漏了什么或者是否有简单的解决方法?与此同时,我正在使用这个不是很优雅但有效的解决方法:publicstaticDateTim

c# - 使用 Interlocked 的线程安全 DateTime 更新。*

我可以使用Interlocked.*同步方法来更新DateTime变量吗?我希望在内存中保留最后一次触摸时间戳。多个http线程将更新最后一次触摸DateTime变量。我很欣赏DateTime变量是被替换而不是更新的值类型。我能想到的最好的方法是将时间戳记作为一个long中的总滴答数classx{long_lastHit;voidTouch(){Interlocked.Exchange(ref_lastHit,DateTime.Now.Ticks);}} 最佳答案 选项1:使用带有Interlocked和DateTime.ToBin

c# - 在 WPF/XAML 中显示本地时区的时间

我的应用程序在多个不同设备之间同步数据。出于这个原因,它将所有日期存储在UTC时区中,以说明可能被设置为不同时区的不同设备。问题是,当我读回日期并显示它们时,它们似乎不正确(大多数用户使用英国夏令时,所以他们晚了一个小时)。我是否需要手动覆盖UI线程的setCurrentCulture属性?我知道我必须在Silverlight中执行此操作。 最佳答案 您是否将“Utc”指定为DateTime.Kind在解析存储的DateTime并将其转换为DateTime.ToLocalTime()时?publicDateTimeSubmitted

c# - 检查 C# 中的日期范围是否连续?

假设我有一个用户界面,用户可以在其中选择日期。有没有办法检查所选日期是否连续,例如:4/4、4/5、4/6、4/7、4/8、4/9、4/10或4/29、4/30、5/1、5/2、5/3我知道我可能可以遍历日期范围并进行检查,但我更好奇是否已经有内置方法来检查这一点。关于上述情况,它们是有序的,可以滚动到下个月。我使用的是.NETFramework2.0,无法使用LINQ。关于汤姆的回答:DateTimedtStart=newDateTime(2011,5,4);DateTimedtEnd=newDateTime(2011,5,11);intnumberOfDaysSelected=7;

c# - 编译时常量差异

更新:这似乎是一个编译器转移注意力的问题,因为以下内容实际上是有效的:constintMyInt=default(int);问题在于DateTime不是有效的const,而不是default的使用。让我感到困惑的主要原因是没有意识到default(DateTime)是在可选参数中专门处理的(而且我得出了一个错误的结论,即default(DateTime)由于错误消息忽略了其他可能的条件而被视为编译时常量)。MarcinJuraszek在他的回答中解决了这个问题。原始问题:这是无耻地从MarcGravell来自thisanswer的评论中撕下的另一个问题。为什么以下内容有效://Noco

c# - .Net CultureInfo Month Names 返回一个额外的空字符串

我有以下代码来获取月份名称列表:varmonthNames=System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.MonthNames;出于某种原因,这会不断返回一个额外的空字符串值以及月份名称:我正在使用XamarinStudio。其他人以前遇到过这种情况吗? 最佳答案 有些日历像TaiwanLunisolarCalendar或KoreanLunisolarCalendar有13个月。在12个月的日历中,数组的第13个元素是一个空字符串。DateTimeFor