Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.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# 为什么Timespan.TryParseExact没有按预期解析输入?_C#_Asp.net - Fatal编程技术网

C# 为什么Timespan.TryParseExact没有按预期解析输入?

C# 为什么Timespan.TryParseExact没有按预期解析输入?,c#,asp.net,C#,Asp.net,我有以下代码: var test = TimeSpan.MinValue; var t = TimeSpan.TryParseExact( "03:01 PM", "hh:mm tt", CultureInfo.InvariantCulture, out test); t显示为false。我肯定我错过了什么,我就是想不出来 它是字符串中的AM/PM指示符。它不应该在那里 TimeSpan表示持续时间。将其更改为DateTime,它就会工作,TimeSpan表示持续时

我有以下代码:

var test = TimeSpan.MinValue;
var t = TimeSpan.TryParseExact(
    "03:01 PM", 
    "hh:mm tt", 
    CultureInfo.InvariantCulture, out test);

t
显示为false。我肯定我错过了什么,我就是想不出来

它是字符串中的AM/PM指示符。它不应该在那里


TimeSpan
表示持续时间。

将其更改为DateTime,它就会工作,TimeSpan表示持续时间,而不是解析日期

var test = DateTime.MinValue;
var t = DateTime.TryParseExact("03:01 PM", "hh:mm tt", CultureInfo.CurrentCulture, DateTimeStyles.AssumeLocal, out test);

时间跨度衡量的是时间量。因此AM/PM没有意义,并且在输入或格式字符串中不受支持

此MSDN页面详细说明了有效的自定义格式说明符:


正如@Austin Salonen在他的评论中所建议的,既然您试图获取日期和时间,那么您应该将输入解析为DateTime而不是TimeSpan。

在不使用TryParseExact的情况下尝试(只需执行ParseExact),看看异常情况是什么样子?在格式字符串中,
tt
是什么意思?您可以链接源吗?嗨,Adam-我收到以下错误:“System.FormatException:输入字符串的格式不正确。”时间跨度度量时间量。因此AM/PM没有任何意义,并且在输入或格式字符串中不受支持。如何
txtDate.Text+“”+txtdime.Text
并对其进行解析?