Получить время Значение строки DateTime в DataGridView? - PullRequest
0 голосов
/ 02 мая 2018

Я новичок в C #. У меня есть DataGridView, который отображает:

string Column4 = DateTime.Today.AddDays(1).AddHours(7).ToString();

Как мне затем получить только значение времени (т.е. 07:00:00) в виде строки позже?

РЕДАКТИРОВАТЬ: Дата должна быть в том формате, в котором она находится в настоящее время, и оставаться такой же в DataGridView, но, например, когда я делаю:

 string newString = Column4;
 Console.WriteLine(newString);

Как мне просто извлечь значение времени из Column4, а не всю дату?

EDIT2: увидел возможный дубликат вопроса и попробовал:

 DateTime newString = DateTime.Parse(Column4);
 newString.ToString("HH:mm");
 Console.WriteLine(newString);

Но это все же произвело:

02/05/2018 07: 00: 00

1 Ответ

0 голосов
/ 02 мая 2018

Если вам нужно только значение времени, вы можете использовать TimeSpan структуру. Эта структура представляет временной интервал, который вы можете настроить по своему усмотрению. Вы можете использовать конструктор структуры и его метод ToString() для хранения строкового представления того времени.

Это код, который вы можете использовать:

string Column4 = (new TimeSpan(7, 0, 0)).ToString();

Если вам понадобится позднее использовать то же значение TimeSpan, я предлагаю вам сохранить его в переменной:

TimeSpan time = new TimeSpan(7, 0, 0);
string Column4 = time.ToString();

Помните, что если вы хотите сделать ссылку на дату, вы можете использовать структуру DateTime. Иначе, если вам нужно только время, вы можете использовать структуру TimeSpan.

Чтобы преобразовать структуру TimeSpan в структуру Datetime, вы можете сделать это:

DateTime date = DateTime.Today + new TimeSpan(7, 0, 0)).ToString();

Обновление: Если вам просто нужно время из структурной переменной DateTime, вы можете отформатировать его:

string newString = DateTime.Parse(Column4).ToString("t");

// Result: 7:00

Или

string newString = DateTime.Parse(Column4).ToString("T");

// Result: 7:00:00

Вы можете увидеть другие форматы строк на этой странице Microsoft MSDN .

На этой странице Microsoft MSDN приведен пример создания экземпляра структуры TimeSpan с требуемым временем:

Вызывая один из явных конструкторов. В следующем примере значение TimeSpan инициализируется указанным числом часов, минут и секунд:

TimeSpan interval =  newTimeSpan(2, 14, 18);
Console.WriteLine(interval.ToString()); // Displays "02:14:18". 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...