我必须在c#中以这种格式读取日期
yyyy/MM/dd HH:mm:ss
不能更改格式,因为它是由另一个应用程序编写的日期是像
这样的字符串。2009/11/17 12.31.35
如何在不解析的情况下读取此格式(如果可能的话,不拆分)
谢谢
我不能更改格式,因为它是由另一个应用程序编写的
解决方案1:您不需要更改格式来读取它
试试这个:
DateTime dt;
DateTime.TryParseExact(date, "yyyy/MM/dd HH.mm.ss",
CultureInfo.InvariantCulture, DateTimeStyles.None, out dt);
或
我如何能读取这种格式而不解析它(没有分割如果可能)
方案二:如果您想从日期字符串中提取值。
试试这个:
string str = "2009/11/17 12.31.35";
string year = str.Substring(0, 4); //2009
string month = str.Substring(5, 2); //11
string date = str.Substring(8, 2); //17
string Hours = str.Substring(11, 2); //12
string minutes = str.Substring(14, 2);//31
string seconds = str.Substring(17, 2);//35
使用DateTime.ParseExact
,您可以在其中提供自定义日期格式
尝试用:
替换.
,然后用ParseExtract
string dt= "2009/11/17 12.31.35";
var dt2= ss.Replace('.', ':');
DateTime d = DateTime.ParseExact(dt2, "yyyy/MM/dd HH:mm:ss", CultureInfo.InvariantCulture);
还是
DateTime d = DateTime.ParseExact("2009/11/17 12.31.35", "yyyy/MM/dd HH.mm.ss", CultureInfo.InvariantCulture);