Tag: datetime

如何在C#中创建可以转换为DateTime的类?

如何进行类,可以转换为DateTime。 但是,当它打包时,我需要投我的课。 例如: object date1 = new MyDateTime(); DateTime date2 = (DateTime)date1; 我需要直接这个工作的例子。 我知道怎么做,但我的方式将无需包装。 我不确定是否有办法做到这一点。 请帮忙。 PS。 我需要直接将对象转换为DateTime。 因此,MyDateTime必须先打包。 显式效果很好,但是如果你有打包对象则没有用。 它只需要使用普通的铸造就像 (DateTime) (object) MyDateTime

通过从当前日期减去秒数来获取DateTime

我想从日期中减去秒数,例如: 假设我在无符号整数中有1300秒,我想取当前日期和时间,从中减去1,300秒,最后得到: 01/13/2012 2:15 PM (格式并不重要)。 我试过了: DateTime dt = new DateTime(); dt.Add(new TimeSpan(0, 0, ui.OnlineTime)); Online.Text = dt.ToLongDateString();

为什么System.Convert有ToDateTime接受DateTime?

// // Summary: // Returns the specified System.DateTime object; no actual conversion is performed. // // Parameters: // value: // A date and time value. // // Returns: // value is returned unchanged. public static DateTime ToDateTime(DateTime value); 为什么System.Convert有ToDateTime接受DateTime? 方法文档说明值保持不变。

DateTime可以为null吗?

可能重复: DateTime“null”值 是否可以将datetime对象设置为null?

比较datetime而不是毫秒

我需要在两个单独的列表中比较日期。 每个列表都由MyFile对象构成。 这是我创建的一个类,用于获取有关文件的特定信息,例如name,dateModified,extension等。唯一的问题是我的第二个列表中的很多MyFiles对象(从外部硬盘驱动器获取)没有使用dateTime标记(LastWriteTime)直到毫秒。 我相信这就是为什么我的比较不起作用的原因。 例如,这里是我的比较失败的一个例子:“为什么c#认为日期不相等?” a和b是MyFile对象,MyFile类包含一个属性ticks,它等于file.LastWriteTime.Ticks它们没有在我刚刚包含它们的程序中用于调试目的。 因此,经过多次调试后,我意识到最后7位代表文件的毫秒数。 因此,我在MyFile中的ticks属性现在包含11个有效数字而不是18个(注意18-11 = 7)。 这个问题是,当我比较滴答时,当我尝试通过除以10000000然后多次乘以10000000来更新ticks属性时,我得到奇怪的结果。由于我的ticks propery是一个long int,它将丢失最后7位数当我划分。 我得到的’错误’更少。 但是还有一些时候我会得到这样的东西: 在这里我们可以看到日期至少相同,直到第二个。 为什么c#认为它不是同一个日期? 我是否必须创建自己的“Ticks”function? 我知道我将dateTime转换为字符串然后比较它但我希望知道对象a.dateModified是否比对象b.dateModified更新的可能性

Json日期时间问题

可能重复: 如何强制netwtonsoft json序列化程序将datetime属性序列化为字符串? 我使用Newtonsoft.Json将我的对象转换为JSon文件。 但我遇到日期时间问题,在我的对象datetime字段设置为”7/30/2012 8:29:12 PM”但在Json文件中我得到这种格式的日期时间字段”\/Date(1343660352227+0530)\/” 我需要以与对象相同的格式获取日期时间。 有可能吗?为了获得相同的格式,我该怎么办?

比较LINQ中过去的日期

我必须编写一个LINQ语句,该语句查找项目在过去90天内出现在数据库中的次数。 这很容易,但他们希望在1-30天,31-60天和61-90天内查看数据。 我目前正在做的是创建一个包含四组数据的模型,获取所有唯一SKU的列表,然后查找它们在数据库中出现的次数。 我的问题是日期范围。 我正在创建新的DateTime对象并向他们添加NEGATIVE天,我正在尝试使用它来比较范围。 我无法弄清楚如何说出这样的话: 编辑日期介于(-30天)和(-60天)之间。 我无法使用SP。 必须有一个更简单的方法。 也许使用时间跨度,看看它是否落在那个跨度? 我不确定。 我很少与约会合作。

难倒C#DateTime ToString()格式化问题

我在C#中的DateTime对象上获取了一些ToString()调用返回的垃圾数据,我担心在用它调整一段时间后我会感到难过。 该函数应该格式化日期以符合RFC 822(根据RSS规范的要求),看起来像: public static string FormatPubDate(DateTime pubDate) { string _rfc822Format = “ddd, dd MMM yyyy HH:mm:ss”; string _tmp = pubDate.ToUniversalTime().ToString(_rfc822Format); return pubDate.ToString(_tmp + ” UT”); } 从我能读到的DateTime ToString()文档中,我应该是我想要的。 但是,对于某些日期,它会产生垃圾: Console.WriteLine(FormatPubDate(new DateTime(2008, 12, 16, 13, 44, 33))); Console.WriteLine(FormatPubDate(new DateTime(2008, 12, 17, 13, 44, 33))); Console.WriteLine(FormatPubDate(new DateTime(2009, 3, 18, 4, 17, 20))); Console.WriteLine(FormatPubDate(new DateTime(2009, 4, 30, […]

使用DateTime结构解析ISO8601日期/时间

我试图用.NET的DateTime结构解析ISO8601格式的日期/时间字符串。 为了让我完全解决问题,我将使用.NET和JavaScript执行测试。 我目前在英国(英国夏令时,UTC + 01:00)。 我对ISO8601的理解是: 当字符串后缀为“Z”时,时间以UTC表示。 当字符串后缀为“+/- hh:mm”时,时间以本地时间表示,其中“+/- hh:mm”表示与UTC的偏移量。 请考虑以下ISO8601日期/时间格式字符串: “1987-01-05T08:45:30.500+0100” 鉴于我的观点,该字符串表示当地时间为“08:45:30”,UTC时间为“07:45:30” 当前TimeZone测试(.NET) DateTime now = DateTime.Now; Console.WriteLine(now.ToLocalTime()); // 27/08/2013 12:02:43 Console.WriteLine(now.ToUniversalTime()); // 27/08/2013 11:02:43 当前TimeZone测试(JavaScript) var now = new Date(Date.now()); now.toString(); // Tue Aug 27 2013 12:03:46 GMT+0100 (GMT Daylight Time) now.toUTCString(); // Tue, 27 Aug 2013 11:03:46 GMT 除了两个例子之间的微小(分钟/秒)差异之外,它们正在回归我对英国夏令时(UTC + 01:00)的期望。 分钟/秒差异是因为我无法同时运行.NET测试和JavaScript测试。 […]

将Julian日期与时间(H / m / s)转换为C#中的日期时间

如何在时间上转换朱利安日期 – 例如2456961.090914(CE 2014年10月30日14:10:54.6 UT),您可以在本网站上测试: http : //aa.usno.navy.mil/data/docs/JulianDate。 php在C#中? 我尝试了几种我在网上找到的算法,但有些算法并没有考虑将朱利安视为double ,只考虑long或偶数。 其他一些使用我在System.DateTime没有的DateTime.ToOADate 。 如何将给定的Julian日期转换为正常/常规DateTime?