【问题标题】:C# convert datetimeoffset to string with millisecondsC# 将 datetimeoffset 转换为以毫秒为单位的字符串
【发布时间】:2011-03-23 16:49:33
【问题描述】:

datetimeoffset 中的默认 toString() 方法将时间转换为字符串格式,但会丢失毫秒。有没有办法保存?

【问题讨论】:

    标签: c# datetime datetimeoffset


    【解决方案1】:

    ToString() 采用格式参数。现有的字符串格式代码将打印毫秒 - 看看list here

    例如,格式代码“o”将打印一个以毫秒为单位的完整时间字符串,或者您可以创建自己的格式字符串以满足您的需求并使用“ffff”说明符在适当的地方添加毫秒。

    myDateTime.ToString("o")
    

    【讨论】:

      【解决方案2】:

      你必须使用字符串格式的“ffff”来获取毫秒,比如:

      DateTime date = DateTime.Now;
       string strDate = String.Format("{0:dd.MM.yyyy hh:mm.ss:ffff}", date);
      

      米加

      【讨论】:

        【解决方案3】:

        根据DateTimeOffsetdocumentation,这在很大程度上类似于DateTime 类的ToString。这意味着您可以使用标准格式字符串o 来显示毫秒数,或者您可以使用任何您想要的custom format pattern

        所以你可以这样做:

        Console.WriteLine(dto.ToString("o"));
        

        【讨论】:

          【解决方案4】:

          您可以在格式字符串中使用 f 字符。

          DateTimeOffset.Now.ToString("ddMMyyy-HH:mm:ss")
          

          给出“23032011-16:58:36”

          DateTimeOffset.Now.ToString("ddMMyyy:HHmmssffff")
          

          给出“23032011-16:59:088562”

          【讨论】:

            猜你喜欢
            • 2020-12-17
            • 2014-10-16
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-04-09
            • 1970-01-01
            • 1970-01-01
            • 2011-01-28
            相关资源
            最近更新 更多