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

时间:2018-02-02 16:33:13

标签: vb.net datetime

我正在尝试将一个字符串(包含一个毫秒的日期时间)转换为具有毫秒的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对象包含毫秒?

2 个答案:

答案 0 :(得分: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>>日期时间>>串。您执行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"))

答案 1 :(得分:0)

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

毫秒部分是" fff"。