Вставка данных доступа в .CSV и данные вставляются со временем - PullRequest
0 голосов
/ 09 апреля 2020

Я пытаюсь вставить данные из файла Access to CSV. В файле доступа у меня есть поле RecordingDate. всякий раз, когда я вставляю поле RecordingDate, время автоматически добавляется в файл CSV. Например, в моем файле доступа у меня есть это:

3/2/2020

, а в файле CSV это же поле отображается как:

3/2/2020  12:00:00 AM

Ниже приведен мой код в C#:

var textWriter = new StreamWriter(_configuration.GetValue<string>("MySettings:CSVFile"));
            var writer = new CsvHelper.CsvWriter(textWriter, CultureInfo.InvariantCulture);

      using (OleDbConnection connection = new OleDbConnection(_configuration.GetConnectionString("AccessConnection")))
                {
                    using (OleDbCommand cmd = new OleDbCommand("select *  from RecsCD", connection))
                    {
                        connection.Open();
                        reader = cmd.ExecuteReader(CommandBehavior.Default);

                   }
  while (reader.Read())
                {
                    foreach (int i in Enumerable.Range(0, reader.FieldCount))
                    {
                        writer.WriteField(reader.GetFieldValue<object>(i));
                    }

                    writer.NextRecord();
                }
            }

любая помощь в удалении части времени будет высоко оценена.

1 Ответ

1 голос
/ 09 апреля 2020

Нечто подобное будет работать.

 foreach(int i in Enumerable.Range(0, reader.FieldCount)) {
  var value = reader.GetFieldValue <object> (i); // put it in a variable
  DateTime temp;

  // check if the field you read is datetime
  if (DateTime.TryParse(value, out temp)) {
   // if so then format it -- you can also apply some sort of formatting too
   writer.WriteField(temp.ToShortDateString());
  } else {
   // if not datetime, then write whatever the value is
   writer.WriteField(value);
  }
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...