c# - Datetime.TryParse 无法解析 yyyy/MM/dd 格式

标签 c# datetime tryparse

我目前正在尝试将格式中给出的日期转换为 yyyy/MM/dd . 检查是否给出了有效的日期。

if(!DateTime.TryParse(textBoxDatumVanStorting.Text, out Test2))

我现在正在使用什么,但它总是给我一个错误的日期。

我研究过使用 DateTime.TryParseExact . 但似乎无法让它发挥作用。

最佳答案

指定格式

考虑使用 DateTime.TryParseExact()允许您明确定义字符串格式的方法:

// This will attempt to parse your date in exactly the format provided
if(!DateTime.TryParseExact(textBoxDatumVanStorting.Text,"yyyy/MM/dd", null, DateTimeStyles.None, out Date2))
{
    // Your date is not valid, consider doing something
}

文化问题

在上面的示例中,传入的第三个参数表示您希望用于解析日期的特定文化/格式。使用 null 将默认为当前文化,但如果您需要明确指定这一点,您可以在此处使用不变文化来执行此操作:

Date output;
if(!DateTime.TryParseExact(input,"yyyy/MM/dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out output))  
{
     // Uh oh again...
}

关于c# - Datetime.TryParse 无法解析 yyyy/MM/dd 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37598436/

相关文章:

c# - 如何将 2 个密码框作为命令参数传递给命令?

c# - WPF - 数据绑定(bind)时是否正在进行某种隐式转换?

powershell - PowerShell Get-Date不刷新for循环

c# - Int.TryParse() 总是返回 false

c# - 使用 (Try)Parse 将空字符串加倍

c# - 委托(delegate)和事件

c# - If 语句 - 'or' 但不是 'and'

datetime - 冷融合 : CreateDateTime : 13 digit epoch time

Android 时间格式问题 - 它以 A.M/P.M 的形式出现

c# - 不成功的 Try() 方法应将输出值设置为多少?