我有一个代码,用于检查字符串是否为日期格式。 如果是日期格式,我会用正确的日期格式编写,否则将其作为传入字符串。
我的日常字符串格式为
2016-08-08T18:30:00.000Z //if string is in this format only it should go inside if case.
namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
var answerString = "11,10";
DateTime dDate;
if (DateTime.TryParse(answerString, out dDate))
{
var date = DateTime.Parse(answerString);
// var indianTime = CovertToDefaultTimeZone(date);
answerString = date.ToString("dd/MM/yyyy");
Console.WriteLine(answerString);
Console.ReadLine();
}
Console.WriteLine(answerString);
Console.ReadLine();
}
}
}
我该怎么办?
答案 0 :(得分:1)
if (DateTime.TryParseExact(answerString,"yyyy-MM-ddTHH:mm:ss.fffZ",CultureInfo.InvariantCulture,DateTimeStyles.None,out dDate))
{
//var date = DateTime.Parse(answerString); no need to parse again parsed date is in dDate
// var indianTime = CovertToDefaultTimeZone(date);
answerString = dDate.ToString("dd/MM/yyyy");
Console.WriteLine(answerString);
Console.ReadLine();
}
使用TryParseExact
方法。
答案 1 :(得分:1)
您可以像这样使用DateTime.TryParseExact
DateTime result;
var formatString = "yyyy-MM-ddTHH\\:mm\\:ss.fffZ";
var isValidDate = DateTime.TryParseExact("2016-08-08T18:30:00.000Z", formatString, CultureInfo.InvariantCulture, DateTimeStyles.None, out result);