Формат даты - C # - Конвертация - PullRequest
0 голосов
/ 28 февраля 2019

Я извлек данные из базы данных в Excel, столбцы даты выражены в этом формате.

38876,588587963

Я сейчас пытаюсь прочитать этот файл в C # и преобразовать даты в формат DateTime.Может кто-нибудь просветить меня в этом формате даты.

Когда я пытаюсь создать объект DateTime, программа выдает ошибку.

DateTime dt = new DateTime("38876,588587963");

1 Ответ

0 голосов
/ 28 февраля 2019

Вы можете преобразовать его в DateTime, используя метод FromOADate в DateTime.Однако этот метод принимает значение типа double, которое не работает с текущим форматированием, анализируйте его как double и задайте параметры культуры следующим образом:

string output = "38876,588587963";
DateTime dt = DateTime.FromOADate(double.Parse(output, CultureInfo.CurrentCulture));

Или, если вы знаете, что культура собираетсявсегда быть fr-CA вы можете сделать:

DateTime dt = DateTime.FromOADate(double.Parse(output, CultureInfo.CreateSpecificCulture("fr-CA")));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...