这是有效的德国日期文化格式吗?

gne*_*ric 4 c# datetime cultureinfo

所以我正在使用一个API,其中以下列格式检索日期时间 DIE, 28. AUG 2018 12:38:38

我找到的最接近的日期时间格式是这个ddd, dd. MMM yyyy HH:mm:ss.它只适用于它DI,但是API提供了这一天DIE.

是否存在可以解析的格式DIE, 28. AUG 2018 12:38:38我相信此API的开发人员使用某种不同的格式.

有谁知道它可能是什么?

编辑:我试过的一些代码

static void Main(string[] args)
{
    const string DateTimeFormat = "ddd, dd. MMM yyyy HH:mm:ss";
    var deCultureInfo = new CultureInfo("de-DE");

    string input = "DIE, 28. AUG 2018 14:12:01";

    // both throws exception
    var timestamp1 = DateTime.ParseExact(input, DateTimeFormat, deCultureInfo);
    var timestamp2 = DateTime.Parse(input, deCultureInfo);


    //Console.WriteLine(DateTime.Now.ToString(deCultureInfo));

}
Run Code Online (Sandbox Code Playgroud)

Chr*_*all 8

您可以覆盖ddd在财产AbbreviatedDayNames的使用DateTimeFormatInfo:

const string DateTimeFormat = "ddd, dd. MMM yyyy HH:mm:ss";
var deCultureInfo = new CultureInfo("de-DE");

var input = "DIE, 28. AUG 2018 14:12:01";

CultureInfo ci = CultureInfo.CreateSpecificCulture("de-DE");
DateTimeFormatInfo dtfi = ci.DateTimeFormat;

// addjust this to your german strings
dtfi.AbbreviatedDayNames = new[] { "SON", "MON", "DIE", "MIT", "DON", "FRE", "SAM" };

var timestamp1 = DateTime.ParseExact(input, DateTimeFormat, dtfi);
Run Code Online (Sandbox Code Playgroud)

doku看到这个.


nvo*_*igt 5

只是提供另一种选择:只是不要.

无论那部分是什么,它都是多余的.2018年8月28日绝不可能是其他任何东西.那里的信息对计算机没有价值.这种格式适用于人类,他们不能在几个CPU周期中"看起来那样".

不要解析input,只需解析input.Split(",").Last().Trim().此API显然不是由专家编写的,也不是由另一台计算机使用(德语日期格式,工作日,工作日格式错误).看起来这是一个显示给产品最终用户的字符串.考虑到它在任何时候都有破坏变化的风险,这可能是用户在特定时间"最喜欢"的情况.