我从excel文件中获取了一些数据。
我想验证用户是否输入了有效的日期时间字符串。我曾尝试使用DateTime.Parse方法但发现某些值似乎已被接受。
例如,
如果我提交3.3作为日期时间,则DateTime.Parse方法将其作为有效日期时间接受并输出03/03/2012 00:00:00
我想要阻止这个。仅允许用户输入格式正确的日期时间。
例如,用户可以提供03/03/2012或03/03/2012 12:30:00但不提供01022012或3.3.2012等值
任何想法?
答案 0 :(得分:2)
您想使用DateTime.ParseExact
或DateTime.TryParseExact
这允许您从您选择的日期格式字符串进行解析。
http://msdn.microsoft.com/en-us/library/system.datetime.tryparseexact.aspx
这里的例子: -
答案 1 :(得分:1)
您可以使用RegEx来实现此目的。这样的事情可以帮助@“\ d {2} / \ d {2} / \ d {4}(\ s + \ d {2} \:\ d {2} \:\ d {2})?”< / p>
答案 2 :(得分:1)
您可以使用各种jquery插件/函数(如this)在客户端处理它,或者简单的Google搜索可以返回许多其他有用的结果。
如果你想在服务器端处理它,(我不确定你在做什么项目)但是依靠它你可以编写自己的方法/使用Regex或Data Annotation MVC。
如果您仍然遇到问题,请尝试添加一些有关您的项目的详细信息,例如语言,架构等,以便更有助于提供正确的解决方案。
希望它有所帮助。三江源