Convert Datetime to int c#

We need to convert datetime to int in c# for example when we want to add new series of the data in chart control to previously added series of data where x axis was given in datetime format. If in this additional data series we have X axes values as integers, chart control will automatically convert this X axses data into datetime format. Problem is that we indexed X axes data in order to appearance (1,2,…), chart will convert this data into date 1900/1/1, 1900/1/2 and so forth. In order to allay new data series with previous datetime we can use simple linear conversion:

YMIN_DATE = aXMIN_VALUE + b

and

YMAX_VALUE = aXMAX_VALUE + b

and calculate a and b coefficients.

Then we can calculate corresponding datetime values to given X axis data values:

Y = aX + b.

But we need to convert XMIN_VALUE (that is integer) to corresponding YMIN_DATE that is datetime with the following datetime to int c# conversion code:

int int_Smallest_X = (int)(dtSmallest.Date – new DateTime(1900, 1, 1)).TotalDays + 2;

In here dtSmallest is of datetime format.

Reverse conversion goes with following code:

dtSmallest = DateTime(1900, 1, 1).AddDays(int_Smallest_X – 2);

Or we can do it in following way:

TimeSpan span = dtFirst.Subtract(dtSecond);
int int_days = (int)span.TotalDays;

External links:

Convert Datetime to int c# in Stackoverflow

Posted in c-sharp-code-examples Tagged with:

Leave a Reply

Your email address will not be published. Required fields are marked *

*