Мой datetime
находится в этом формате 2017-01-15T21:00-07:00
, поэтому я разбираю его так
string ADT = Convert.ToString(timestamp.DateOrTimestamp);
int index = ADT.IndexOf("T");
string FADT = (index > 0 ? ADT.Substring(0, index) : "");
DateTime dtFADT = DateTime.ParseExact(FADT, "yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture);
string ADT1 = ADT.Split('T', '-')[3];
Console.WriteLine("{0}: {1}", timestamp.Type, dtFADT.ToString("MM/dd/yyyy") + " " + String.Format("{0:h:mm t}", ADT1));
Который напишет в консоль: Delivery: 01/15/2017 09:00:00
Почему String.Format()
не добавляет AM/PM к моему времени?
21:00-07:00
это диапазон или что? Если07
для секунд, то что означает последний00
? - person Ghasan غسان   schedule 16.01.2017DateTime
НЕ имеет формат2017-01-15T21:00-07:00
. Этоstring
.DateTime
НЕ имеет формат — это просто число. Только когда вы вызываете.ToString(...)
, вы создаетеstring
, у которого есть формат. - person Enigmativity   schedule 16.01.2017format
, который вы также можете установить для себя. - person Mohit Shrivastava   schedule 16.01.2017DateTime
и форматами даты/времени. - person Enigmativity   schedule 16.01.2017