如何将美国日期解析为英国日期,并在vb.net中作为日期返回

如何将美国日期解析为英国日期,并在vb.net中作为日期返回,vb.net,datetime-format,Vb.net,Datetime Format,我有一个datetime,它被传递到一个方法中。这是美国的约会。我基本上需要将其转换为英国日期并作为日期时间返回。下面是一个我尝试过的示例,但它只返回dateTimeIn格式(02/24/2021 12:00:00)。我做错了什么 Dim dateTimeIn As Date = #02/24/2021 12:00:00# Dim covertToUkDateTime As String = dateTimeIn.ToString(new CultureInfo(&q

我有一个datetime,它被传递到一个方法中。这是美国的约会。我基本上需要将其转换为英国日期并作为日期时间返回。下面是一个我尝试过的示例,但它只返回dateTimeIn格式(02/24/2021 12:00:00)。我做错了什么

    Dim dateTimeIn As Date = #02/24/2021 12:00:00# 
    
    Dim covertToUkDateTime As String = dateTimeIn.ToString(new CultureInfo("en-GB"))
    Dim covertToUkDateTimeToDate As Date = Date.ParseExact(covertToUkDateTime, "dd/MM/yyyy hh:mm:ss", CultureInfo.CreateSpecificCulture("en-GB"))
    
    Console.WriteLine(covertToUkDateTimeToDate)

没有像我们这样的东西
DateTime
。您收到的是字符串还是日期时间对象?您是否只需要在某处以
en GB
字符串格式显示DateTime对象?看起来你把一个DateTime对象和它的表示混合在一起了,也就是说,你在IDE中看到的东西,它是基于明显的原因呈现给你的。该方法接收US格式的DateTime对象(来自excel文件)。我试图转换成Uk的一种格式,然后尝试将其解析为一个日期,但这不重要,因为我可能会混合日期时间representation@Byronation在代码中使用字符串而不是日期时间是错误的。它的显示是将其转换为字符串的位置。需要避免使用#s创建日期时间的VB方法:使用显式的
新日期时间(2021,2,24,12,0,0)
。谢谢@AndrewMorton。我现在已经设法解决了这个问题。我误解了DateTime的工作方式和我想要实现的目标。谢谢你的建议。