Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将字符串转换为时间_C#_String_Datetime_Time_Format - Fatal编程技术网

C# 将字符串转换为时间

C# 将字符串转换为时间,c#,string,datetime,time,format,C#,String,Datetime,Time,Format,我有这样的字符串:“0:385”(第一个数字是秒,下一个数字是毫秒),我想在datagridview中使用类似于数字(而不是字符串)的排序,所以我试图从字符串中确定DateTime,但我不确定具体如何做到这一点。我知道我应该使用方法Parse(或ParseExact),但当我尝试它时,它会说“字符串未被识别为有效的日期时间”。我读了一些关于这方面的文章,但我不确定如何确切地使用IFormatProvider和next参数。 感谢您的帮助因为您的字符串缺少日期、月份和年份,您将无法将其解析为日期时

我有这样的字符串:“0:385”(第一个数字是秒,下一个数字是毫秒),我想在datagridview中使用类似于数字(而不是字符串)的排序,所以我试图从字符串中确定DateTime,但我不确定具体如何做到这一点。我知道我应该使用方法Parse(或ParseExact),但当我尝试它时,它会说“字符串未被识别为有效的日期时间”。我读了一些关于这方面的文章,但我不确定如何确切地使用IFormatProvider和next参数。
感谢您的帮助

因为您的字符串缺少日期、月份和年份,您将无法将其解析为日期时间


尝试改用。您可以使用以下命令:
TimeSpan.Parse(“0:0:0.365”)

但是您必须将字符串格式化如下:[d.]hh:mm:ss[.ff](天[d]和小数秒[ff]是可选的)

请参阅TimeSpan.Parse(“0:0:0”+str.Replace(“:”,“。”)

请尝试此操作

 var dt = new DateTime(2010, 06, 26); // time is zero by default
 string currTime = "19:04:06";//dateTimePicker1.Value.TimeOfDay.ToString();
 var tm = TimeSpan.Parse(currTime);
 var fullDt = dt + tm;  

我以前尝试过TimeSpan,但当我使用方法Parse时,它说:“TimeSpan无法被解析,因为至少有一个小时、分钟或秒组件超出了它的有效范围。”Thansk,这很有帮助,我认为我必须将字符串修复为正确的格式。