C#如何从Int ddmmyy转换为DateTime?

use*_*034 2 .net c# wpf datetime parsing

好的,所以我将日期存储为ddmmyy或dmmyy格式的int,前导0被截止,例如10914或100914

在某些条件下该值为0表示000000.

如何在不转换为字符串的情况下将其转换为DateTime(由于它可能为0)?是否有某种DateTime.Parse重载?

小智 6

您可以使用整数除法和模数函数来分解这三个部分,然后使用DateTime(int,int,int)构造函数来创建DateTime值.您还需要在某些时候将年份改为完整的四位数年份.

像这样的东西:

int year = (date % 100) + 2000;
int month = (date / 100) % 100;
int day = (date / 100000);
DateTime result = new DateTime(year, month, day);
Run Code Online (Sandbox Code Playgroud)

  • @dotNET我会将其解释为丢弃最终整数值的前导零.因此,如果存在非零日,则不会丢弃月份部分的前导零.因为它只是一个"int",所以这只是一个表示问题. (2认同)