将dateTime转换为其他格式

时间:2020-02-05 02:58:28

标签: c# .net datetime

有一个dateTime,格式为“ dd / mm / yyyy hh:mm:ss tt”。需要从中创建一个string,格式为“ yyyyMMddHHmmssfff”。

string timestamp = (dateTimeUTC.Year).ToString() +  (dateTimeUTC.Month).ToString() + (dateTimeUTC.Day).ToString() + (dateTimeUTC.Hour).ToString() + (dateTimeUTC.Minute).ToString() +
                           (dateTimeUTC.Second).ToString() + (dateTimeUTC.Millisecond).ToString();

此代码的问题是,如果月份或日期的任何数字为0-9,则该数字的前面没有0。例如,假设我们有dateTime 1/26/2020 11:59:53 PM。必须将其转换为20200126235651100。取而代之的是20201262359530。

3 个答案:

答案 0 :(得分:1)

只需使用TableModel

上的格式
ToString

答案 1 :(得分:1)

使用string timestamp = dateTimeUTC.ToString("yyyyMMddHHmmssfff"); 和必需的格式,例如

DateTime.ToString()

但是根据您的要求,您需要将string timestamp = dateTimeUTC.ToString("yyyyMMddHHmmssfff"); Console.WriteLine(timestamp); //2020126235953000 转换为timestamp,如果您发现只需要几分之一秒的分数,那么不要使用20201262359530三次,请在下面使用格式,它将为您提供问题中提到的确切值。

fff

输入:

string timestamp = dateTimeUTC.ToString("yyyyMMddHHmmssf");
Console.WriteLine(timestamp);   //20201262359530

输出:

dateTimeUTC: 1/26/2020 11:59:53 PM

Try it online

答案 2 :(得分:1)

Jsut使用DateTime Format Strings(您甚至可以在问题中使用它):

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>