Это работает для меня:
using System;
using System.Globalization;
public class Test
{
static void Main()
{
var value = "1110825";
DateTime dt = DateTime.ParseExact(value, "1yyMMdd",
CultureInfo.InvariantCulture);
Console.WriteLine(dt);
}
}
(Вы можете использовать TryParseExact
, конечно, если вам нужно справиться с неверными данными любым способом, кроме как с исключением.)
Небольшое отклонение от этого - шаблон формата "'1'yyMMdd" - обратите внимание на апострофы вокруг 1. В кавычках 1 означает, что его следует рассматривать как "литерал" в шаблоне.В данном случае это не важно, но если у вас действительно есть такие значения, как «y110825», то вы хотите заключить в кавычки y
, чтобы убедиться, что он не рассматривается как часть спецификатора года.