Я основываю свой вопрос на этом ответ
string str = @"30-מאי-18 14:18:15 +03:00";
DateTimeOffset res;
CultureInfo culture = new CultureInfo("he-IL");
culture.DateTimeFormat.Calendar = new System.Globalization.HebrewCalendar();
if (DateTimeOffset.TryParseExact(str,
"dd-MM-yy HH:mm:ss", culture, DateTimeStyles.None, out res) )
///do stuff
Строка на иврите "מאי" означает "май" (это какой-то иврит, представляющий собой английские слова, которые были приняты на иврите или просто написаны еврейскими буквами).
Поэтому я думаю, что здесь HebrewCalendar()
не имеет никакого эффекта, потому что согласно MSDN соответствует реальным месяцам на иврите
DateTimeOffset.TryParseExact()
у меня не работает, я что-то пропустил?
Не работает с HebrewCalendar()
или без него
tt
. Разве это не месяц??? В любом случае вам нужно использовать шаблон, который соответствует значению."30-מאי-18 14:18:15 +03:00"
совсем не похож на"dd-MM-yy HH:mm:ss"
- person Panagiotis Kanavos   schedule 30.05.2018Exact
. Вы должны точно соответствовать предоставленной строке формата. - person Llama   schedule 30.05.2018DateTimeOffset.Now.ToString("dd-MM-yy HH:mm:ss zzzz",culture)
и снова получил что-то другое. Магия Unicode, но это означает, что я действительно не знаю, как выглядит строка. Я бы посоветовал вам попробовать различные комбинации вToString()
, пока вы не найдете ту, которая выглядит так же, как оригинал. Используйте это как формат в строке синтаксического анализа - person Panagiotis Kanavos   schedule 30.05.2018