将datetime字符串(以毫秒为单位)转换为datetime

问题描述 投票:1回答:2

我正在尝试将一个字符串(包含一个毫秒的日期时间)转换为具有毫秒的DateTime类型,但它对我不起作用。

Dim dt as String = "2018-02-02 08:01:16.111"
dim dtDate as DateTime = Convert.ToDateTime(dt)

RichTextBox1.AppendText(dtDate.ToString)

结果总是:2/2/2018 8:01:16 AM

我怎么能让DateTime对象包含毫秒?

vb.net datetime
2个回答
1
投票

我怎么能让DateTime对象包含毫秒?

它已经有毫秒。

Sub Main()
    Dim dt As String = "2018-02-02 08:01:16.111"
    Dim dtDate As DateTime = Convert.ToDateTime(dt)
    Console.WriteLine(dtDate.Millisecond)
End Sub

111

我想你要做的是让它显示再次显示为字符串时的毫秒数。所以String >> DateTime >> String。你做RichTextBox1.AppendText(dtDate.ToString)但默认情况下ToString不包括毫秒。

使用接受格式字符串的ToString(string format) method。通过这种格式yyyy-MM-dd HH:mm:ss.fff

Dim dt as String = "2018-02-02 08:01:16.111"
Dim dtDate as DateTime = Convert.ToDateTime(dt)
RichTextBox1.AppendText(dtDate.ToString("yyyy-MM-dd HH:mm:ss.fff"))

0
投票

您应该在ToString方法中指定日期时间格式:https://docs.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings

毫秒部分是“fff”。

© www.soinside.com 2019 - 2024. All rights reserved.