将日期格式转换为月-日-年

本文关键字:-日 -年 转换 日期 格式 | 更新日期: 2023-09-27 18:34:49

我正在用日期填充一个列表"结果"。在查询结果中,我得到了一组值..其中日期值采用此格式..

20120510000000000

在我的代码中,我正在执行以下操作。

    query = service.GetData();
    List<String> results = new List<String>();
    foreach (var item in query)
    {
        results.Add(item.InDate);  
        //This is in this format - 20120510000000000
        //Here I want to convert to mm-dd-yyyy                              
    }
    return results;

我想将上述日期格式转换为"mm/dd/yyyy"并将其发布到"结果"列表。

将日期格式转换为月-日-年

query = service.GetData();
    List<String> results = new List<String>();
    foreach (var item in query)
    {
        var unformattedDate = item.InDate;
        var formattedDate = DateTime.ParseExact(unformattedDate,
                                    "yyyyMMddHHmmssfff",
                                    System.Globalization.CultureInfo.InvariantCulture)
        results.Add(formattedDate);                              
    }
    return results;

如果日期保证采用 [年][月][日][小时][分钟][秒][毫秒] 格式(看起来像这样(,您可以使用简单的字符串操作:

var newDate = item.InDate.Substring(2, 2) + "-" +
              item.InDate.Substring(4, 2) + "-" +
              item.InDate.Substring(0, 4);

如果要将其包含在 DateTime 对象中,可以使用 DateTime.ParseExact 方法:

var newDate = DateTime.ParseExact(indate, "yyyyMMddHHmmssfff", CultureInfo.InvariantCulture);
上面

提供的答案是正确的。最好存储您期望的日期格式和您要转换为显示的日期格式,将其存储在配置文件或资源文件中。硬编码不好。