以自定义格式parsing包含date和时间的string
我有一个string的下一个格式"ORDER20100322194007"
,其中20100322
是date和194007
是时间。 如何parsing一个string并获取包含的DateTime
对象?
它会始终以ORDER
开头吗?
string pattern = "'ORDER'yyyyMMddHHmmss"; DateTime dt; if (DateTime.TryParseExact(text, pattern, CultureInfo.InvariantCulture, DateTimeStyles.None, out dt)) { // dt is the parsed value } else { // Invalid string }
如果无效的string应该引发exception,则使用DateTime.ParseExact
而不是DateTime.TryParseExact
如果它不总是以“ORDER”开始,那么做任何你需要的东西来获取date和时间部分,并从上面的格式模式中删除“ORDER”。
您可以使用DateTime.ParseExact方法指定parsing时应使用的格式。
如果你没有一个固定的string结构,那么顺序并不总是在那里,那么你可以使用正则expression式来分隔数字和字符,然后使用转换为datetime函数来分隔数字。