【问题标题】:converting string date to dd.MM.yyyy format将字符串日期转换为 dd.MM.yyyy 格式
【发布时间】:2016-02-27 17:23:47
【问题描述】:

我正在开发 vb.net 应用程序

我得到这样的日期:

recevdate = rs("ITIReceiveddate")

我的接收日期格式是这样的:2/27/2016 month/date/year

我想这样转换:date.month.year 27.2.2016

所以我写了这样的代码:

 Dim dt as string = DateTime.ParseExact(recevdate, "dd.MM.yyyy", Nothing) 

但它得到错误..

我的代码有什么问题?我该如何纠正这个问题?
任何帮助都非常可观..谢谢

【问题讨论】:

    标签: vb.net


    【解决方案1】:

    DateTime.ParseExact 返回一个 DateTime,而不是一个字符串。您的项目设置为将Option Strict 设置为关闭,这将启用这种自动转换。但和往常一样,这是一个等待毫无戒心的程序员的陷阱。

    要正确执行,您需要

    Dim recevdate = "2/27/2016"
    
    
    Dim dt As DateTIme = DateTime.ParseExact(recevdate, "M/d/yyyy", Nothing)
    Dim formattedString = dt.ToString("d.M.yyyy")
    Console.WriteLine(formattedString)
    

    请注意,用于解析日期的格式化掩码中也存在错误。如果您的日期只有一位数月或一位数天,那么您在解析和格式化回字符串时只需要一个 M 和一个 d

    【讨论】:

      猜你喜欢
      • 2012-01-13
      • 1970-01-01
      • 1970-01-01
      • 2020-04-16
      • 1970-01-01
      • 2014-07-29
      • 2013-12-28
      • 1970-01-01
      • 2014-01-18
      相关资源
      最近更新 更多