【问题标题】:VB.NET XML deserializes dates in wrong formatVB.NET XML 以错误的格式反序列化日期
【发布时间】:2017-03-27 08:34:56
【问题描述】:

这是我在这里的第一个问题,温柔:)

我正在尝试将 XML 文件读入我的应用程序。 XML 文件遵循GS1 Warehousing Outbound Instruction 标准,包含[-]CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm] 格式的日期,我认为这是某种XML 规范?

我使用 xsd.exe 从 GS1 提供的 .xsd 文件生成了一些 VB.net 类。这些类工作正常,但由于某种原因,它无法以正确的格式解析日期。具体来说,如果天数小于13,则解析为YYYY-DD-MM格式的日期,导致日期不正确。

我不确定如何让我的应用程序以正确的格式读取日期?

    ' we use FTP to transfer the files
    Dim clsRequest As System.Net.FtpWebRequest =
            DirectCast(System.Net.WebRequest.Create(EndpointRoot & RecvFolder & "/" & filename), System.Net.FtpWebRequest)
    clsRequest.Method = Net.WebRequestMethods.Ftp.DownloadFile
    clsRequest.Credentials = New System.Net.NetworkCredential(FtpUsername, FtpPassword)

    ' variable declaration and other stuff

    ' this happens in a try-catch block
    resp = clsRequest.GetResponse()
    respstream = resp.GetResponseStream()
    reader = New IO.StreamReader(respstream)

    Dim ser As New Serialization.XmlSerializer(GetType(WarehousingOutboundInstructionMessageType))
    doc = ser.Deserialize(reader)
    ' Deserializes the document fine, but dates suchs as 2017-03-12 are parsed as 3rd of December, 2017

我们的计算机在芬兰语言环境中,但我不确定这会产生什么影响,因为芬兰的日期格式是 dd.mm.yyyy

【问题讨论】:

    标签: .net xml vb.net date


    【解决方案1】:

    Nvm,原来我在将日期保存到数据库时处理错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-18
      • 1970-01-01
      • 1970-01-01
      • 2012-09-18
      • 1970-01-01
      相关资源
      最近更新 更多