c# - 如何在 C# 中将数字转换为 dd/mm/yyyy 格式?

标签 c# datetime

<分区>

假设我有字符串“20171013”,现在我想将它转换为 13-10-2017,它也应该在字符串中。此外,我已将这些字符串存储在列表的属性中。是否可以使用 foreach 循环转换所有这些字符串编号的属性?

这是我正在处理的代码

calendarResponse.AgendaOptions
 .ForEach(a => a.AppointmentDate = 
         DateTime.ParseExact(a.AppointmentDate, "ddMMyyyy", 
                 CultureInfo.InvariantCulture).ToString());

在这里,AppointmentDate 有字符串格式的日期,如“20171013”

我得到了错误:

DateTime represented by the string is not supported in calendar System.Globalization.GregorianCalendar

最佳答案

错误的原因是正确的格式应该是yyyyMMdd 而不是ddMMyyyy。还可以在 ToString 中应用格式以获得所需的输出格式:

var data = new List<string> { "20171013" };
var result = data.Select(item => DateTime.ParseExact(item, "yyyyMMdd", CultureInfo.InvariantCulture)
                                         .ToString("dd-MM-yyyy", CultureInfo.InvariantCulture)).ToList();

对于给定的代码:

calendarResponse.AgendaOptions.ForEach(a => 
    a.AppointmentDate = DateTime.ParseExact(a.AppointmentDate, "yyyyMMdd", CultureInfo.InvariantCulture)
                                .ToString("dd-MM-yyyy", CultureInfo.InvariantCulture));

对于支持的 DateTime 格式 see documentation

关于c# - 如何在 C# 中将数字转换为 dd/mm/yyyy 格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46765553/

相关文章:

javascript - 检查增量时间中是否提到了指定时间

pandas - 对 pandas.Datetime 类型的 x 值进行积分

c# - 保护 asp.net webform cookie 不起作用

C# WPF 数据网格转换器

c# - 请对 C# IDisposable 做一些说明

c# - Convert.ToDateTime 在下午日期/时间值上导致 FormatException

python - 将元组转换为日期时间

c# - 解析 XSD 架构时出错 - 未定义的复杂类型

c# - 匹配属性类型的正则表达式 C#

python - 在时间戳/日期时间/日期时间64类型的列上运行groupby时如何正确使用pandas agg函数?