Showing posts with label DateTime. Show all posts
Showing posts with label DateTime. Show all posts

Convert String to DateTime using ASP.NET

Posted by Venkat | Labels: , ,

I saw the question repeatedly asking on forums ie: how to convert the String to datetime.

even if someone give solution still the problems exists..,

Error: String is not recognized as a valid DateTime.

Here i am giving the solution to overcome the problem.

First make sure whether you entered is a valid date or not because User may enter alphabets, special symbols etc.. so in order to avoid that , I have to validate the textbox. Here i am using the Regex to to validate the date.

This is my Article to vaildate date using Regex

try
{
 string sDate ="06/05/2010";
// this the regex to match the date ie: dd/MM/yyyy
 string _dateExpression = @"^((0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](?:19|20)\d\d)$";
 Regex chkDate = new Regex(_dateExpression);
 if ((chkDate.IsMatch(sDate))
 {
 // so if the date is valid and its matched you can store the date on DB or do some manipulatio.
 }
 else
 {
 // show invalid date
 }
}
 catch (System.FormatException ex)
 {
 // show invalid date
 }
catch(Exception ex1)
{
throw;
}

So if the user enter other than numbers it shows format exception to avoid this exception. once i caught the FormatException i am showing the Message to user ie:- input is not valid date or something.

Another small manipulation on DateTime

DateTime sDate = new DateTime();

sDate = DateTime.Today; //  Here i am getting like this 5/6/2010

// So i want this format 05/06/2010  - for this i am using Format to Convert the Date as i Want.

string gDate = String.Format("{0:dd-MM-yyyy}", sDate);

Thanks to All.

Generate 16 Digit Unique Number in CSharp

Posted by Venkat | Labels: ,

Now i am going ot discuss about how to Generate 16 digit Unique number
So ,

5 digit Random using System.Random Class

5 digit number by using TimeSpan

6 numbers by System Time (HH:MM:SS)

This is the Code

System.Random fiveRandom = new Random();
TimeSpan tsFive = new TimeSpan();
tsFive = DateTime .Now.Subtract (Convert.ToDateTime ("01/01/1900"));
string rad = fiveRandom.Next(10000, 99999) +  tsFive.Days.ToString() +   System.DateTime.Now.Hour.ToString ("00") +          System.DateTime.Now.Minute.ToString ("00") +   System.DateTime.Now.Second.ToString ("00")  ;

Compare Datetime Objects

Posted by Venkat | Labels: ,

Here i am going to share
1) How to Compare two Datetime object ( here i am mentioning some ways to Compare Datetime Variables )
2) How to get the timeSpan Values from the Hours and add hours to the Datetime its easy.

It can be expressed as a date and time of day.

It compares Date with time.

DateTime chkExpireDateTime = new DateTime(2009, 8, 1, 0, 0, 0);

if (DateTime.Compare(DateTime.Now , chkExpireDateTime)< 0)
{
// the Current Datetime.now is less than ChkExpireDateTime
}
else if (DateTime.Compare(DateTime.Now, chkExpireDateTime) > 0)
{
// the Current Datetime.now is Greater than ChkExpireDateTime
}
else if (DateTime.Compare(DateTime.Now, DateTime.Now) == 0)
{
// the Current Datetime.now and ChkExpireDateTime are Equal
}

You can also Compare this way.

DateTime systemDate = DateTime.Now;
DateTime compareDate = DateTime.Today.AddHours(11D);

// less than
if (compareDate < systemDate)
Console.WriteLine("Less Than");

// equal to
if (compareDate == systemDate)
Console.WriteLine("Equal To");

// greater than
if (compareDate > systemDate)
Console.WriteLine("Greater Than");

// basically you can compare it in all the normal ways
// using !=, ==, , =, etc



The below code is used to get the Timespan for the for the hours and minutes given through the string.

string time = "02:10";
string[] pieces = time.Split(new char[] { '.' },

StringSplitOptions.RemoveEmptyEntries);
TimeSpan difference2 = new TimeSpan(Convert.ToInt32(pieces[0]),

Convert.ToInt32(pieces[1]), 0);
double minutes2 = difference2.TotalMinutes; // 130
double totalSeconds = difference2.TotalSeconds; // 7800

// this will add the seconds to the Datetime

DateTime getOutTime = new DateTime();
getOutTime = DateTime.Now.AddHours(Convert.ToDouble (getHours ));
getOutTime = DateTime.Now.AddSeconds(totalSeconds);

PayOffers.in