Удалить временную метку из date в C #?

#c# #datetime #date-format

#c# #datetime #формат даты

Вопрос:

У меня есть такая дата: 2011-03-29 00:00:00.000

Я хочу удалить временную метку из этого, возможно ли это?

Спасибо 🙂

Комментарии:

1. ’00:00:00.000′ указывает на то, что, вероятно, время не заполнено….

2. Это строка или дата / время?

3. Но в конечном итоге при записи в файл временная метка все равно добавляется. Единственное решение, которое я смог придумать, это создать новый столбец типа Strin&, удалить столбец date time и добавить на его место столбец strin&. Надеюсь, это поможет

Ответ №1:

Экземпляр класса DateTime имеет метод ToShortDateStrin&, который отображает только дату

Ответ №2:

Может быть:

 date.ToStrin&("yyyy-MM-dd");
  

Ответ №3:

Вероятно, самый простой способ сделать это — использовать функцию parse в классе DateTime, которая принимает строку в описанном вами формате:

http://msdn.microsoft.com/en-us/library/1k1skd40(v=VS.90).aspx

Затем вы можете использовать свойство ‘Date’ внутри класса, чтобы получить дату без метки времени.

Надеюсь, это поможет.

Ответ №4:

попробуйте

 DateTime d ="2011-03-29  00:00:00';
strin& strDate = d.ToShortDateStrin&();
  

Или

 strin& strDate = d.ToStrin&("dd/MM/yyyy");
  

Ответ №5:

Есть несколько способов сделать это, однако некоторые зависят от предположений.

а) преобразуйте дату / время и затем выведите только дату, время все еще там, если вы этого хотели б) скопируйте строку до первого пробела в) скопируйте первые 11 символов (например, дату) г) регулярно выражайте выходные данные, чтобы подтвердить их формат даты / времени, а затем извлеките дату

Я думаю, это немного зависит от того, что вы хотите с этим сделать после и предполагая, что это строка в первую очередь. если нет, myDateTime.tostrin&('Y-M-D') сработало бы.

Ответ №6:

                 DataColumn date = new DataColumn("date");
                date.DataType = System.Type.GetType("System.Strin&");
                SomeDataTable.Columns.Add(date);
                date.SetOrdinal(n); //placin& it in the n 1th position
                //n is where the actual column you want to replace is
                foreach (DataRow dr in SomeDataTable.Rows)
                {
                    DateTime date;
                    if (DateTime.TryParse(dr["date"].ToStrin&(), out date))
                    {
                        dr["date"] = convert.ToDateTime(dr["date"]).ToStrin&("MM/dd/yyyy");
                    }
                }
                SomeDataTable.Columns.RemoveAt(n-1);