草庐IT

Datetime

全部标签

c# - 为什么 TimeSpan.ToString() 需要转义分隔符?

您可以像这样为DateTime对象指定自定义格式:DateTime.Now.ToString("HH:mm:ss");//19:55:23但是当我尝试对TimeSpan对象使用相同的格式时,如下所示:DateTime.Now.TimeOfDay.ToString("HH:mm:ss");我收到“输入字符串的格式不正确。”异常。事实证明,解决方案是您需要像"HH\\:mm\\:ss"那样对':'字符进行转义。请注意,这里有一个双反斜杠,因为如果您只指定一个,它会破坏字符串,因此您也需要转义那个。问题是,.NETFramework开发人员为什么要这样做?必须有一个肯定的理由。为什么我们不能

c# - 为什么 DateTime.ParseExact 不能解析 DateTime 输出?

在与DateTime.ParseExact格式问题作斗争时,我决定将DateTime.ToString()的输出提供给ParseExact,如下所示:DateTimedate2=newDateTime(1962,1,27);string[]expectedFormats={"G","g","f","F","D","d","M/d/yyy","MM/dd/yyy","MM-dd-yyy","MMMdd,yyy","MMMddyyy","MMMMdd,yyy","MMMMddyyy"};boolparsed=false;foreach(stringfmtinexpectedFormats)

c# - 如何获取 TimeZoneInfo 简称

有什么方法可以从中获取3个字符的代码系统.TimeZoneInfo.Local?例如EDT而不是东部夏令时等 最佳答案 不幸的是,据我所知,没有简单的内置方法可以做到这一点。但是,您可以自己组装一些东西。这是一个例子:publicstaticclassTimeZoneInfoExtensions{publicstaticstringAbbreviation(thisTimeZoneInfoSource){varMap=newDictionary(){{"easternstandardtime","est"},{"mountainst

c# - .NET Compact Framework 上 DateTime.Now 中的毫秒数始终为零?

我想为WindowsMobile项目的日志添加一个时间戳。精度必须至少在一百毫秒的范围内。但是,我对DateTime.Now的调用返回了一个DateTime对象,其中Millisecond属性设置为零。Ticks属性也相应地四舍五入。如何获得更好的时间准确性?请记住,我的代码在CompactFramework3.5版上运行。我使用HTCtouchPro2设备。根据MusiGenesis的回答,我创建了以下解决此问题的类://////AmorepreciselyimplementationofsomeDateTimepropertiesonmobiledevices.//////Test

c# - 在可空类型上使用合并空运算符会更改隐式类型

我希望接下来的三行代码是相同的:publicstaticvoidTestVarCoalescing(DateTime?nullableDateTime){vardateTimeNullable1=nullableDateTime.HasValue?nullableDateTime:DateTime.Now;vardateTimeNullable2=nullableDateTime!=null?nullableDateTime:DateTime.Now;vardateTimeWhatType=nullableDateTime??DateTime.Now;}在所有情况下,我都将nullab

c# - System.DateTime 和 System.DateTimeOffset 之间的区别

谁能解释一下C#.NET中System.DateTime和System.DateTimeOffset的区别?哪个最适合与来自不同时区的用户构建网络应用程序? 最佳答案 DateTime值定义特定的日期和时间,它包含一个Kind属性,该属性提供有关该日期和时间所属时区的有限信息。DateTimeOffset结构表示日期和时间值,以及指示该值与UTC的差异程度的偏移量。因此,该值始终明确标识单个时间点。DateTimeOffset应被视为应用程序开发的默认日期和时间类型,因为DateTimeOffset值的使用比DateTime值的使用

c# - 在 C# 中获取两个日期之间的日历周数

就此问题而言,我们假设用户来自美国并使用标准公历。因此,日历周从星期日开始到星期六结束。我想做的是确定两个日期之间存在的日历周数。2010年10月就存在我的问题的一个完美示例。10月16日和10月31日之间有4个日历周。10月10日-10月16日10月17日-10月23日10月24日-10月30日10月31日-11月6日我宁愿远离任何硬编码逻辑,例如:if(Day==DayOfWeek.Saturday&&LastDayOfMonth==31){...}谁能想出一个合乎逻辑的方法来做到这一点?更新:感谢所有伟大的回应,经过一番考虑,这里是我使用的解决方案://getthestartan

c# - 为什么将 DateTime 格式化为字符串会截断而不是舍入毫秒?

当Double被格式化为字符串舍入时。例如Console.WriteLine(12345.6.ToString("F0"));输出12346However,whenaDateTimeisformattedasastringtruncationisused.E.g.varci=CultureInfo.InvariantCulture;vardateTime=DateTime.Parse("2011-09-14T15:18:42.999",ci);Console.WriteLine(dateTime.ToString("o",ci));Console.WriteLine(dateTime.

c# - 首先使用 EF 代码将 datetime2 数据类型转换为 datetime 数据类型错误?

我首先在我的asp.netmvc应用程序中使用EF代码。这是我的代码:Request.RequestDate=DateTime.Now;RequestDate的类型是我数据库中的日期时间。这是我使用上述代码时发生的错误!:Theconversionofadatetime2datatypetoadatetimedatatyperesultedinanout-of-rangevalue.请帮帮我。谢谢。 最佳答案 编辑:Howtofixthedatetime2out-of-rangeconversionerrorusingDbConte

c# - 分组连续日期

我有一个Listdates;我有一个类有:classNonWorkingDay{publicDateTimeStart;publicintDays;}我正在尝试找到一种干净的方法来对它们进行分组。publicListGetContiguousDates(Listdates){}注意:如果星期五有NWD而下一个是星期一,则应将它们分组。不考虑周末。例如如果我有September32013September202013September232013September242013September302013October12013输出将是:Start=September32013,Days