日期时间格式如HH:mm 24小时没有AM / PM
我在这里搜索关于将类似“16:20”的字符串转换为DateTime类型而不会丢失格式,我说我不想添加dd / MM / yyy或秒或AM / PM,因为db只接受这种格式。
我还试过Cultures
提前致谢
所有DateTime对象都必须具有日期和时间。
如果您只想要时间,请使用TimeSpan:
TimeSpan span = TimeSpan.Parse("16:20");
如果需要DateTime,请将该时间添加到最小值:
TimeSpan span = TimeSpan.Parse("16.20"); DateTime dt = DateTime.MinValue.Add(span); // will get you 1/1/1900 4:20 PM which can be formatted with .ToString("HH:mm") for 24 hour formatting
只需为dateTime提供日期格式。
string DateFormat = "yyyy MM d "
这将给你年月和日 。 继续之后; string DateFormat = "yyyy MM d HH:mm:ss "
在这里, Capital H将为您提供24 hours time format
而lowerCase "h" will give you the 12 hours time
格式…
当您将Dateformat作为字符串给出时,您可以使用日期和时间做任何您想做的事情。
string DateFormat = "yyyyMMdHHmmss"; string date = DateTime.Now.ToStrign(DateFormat);
要么
Console.writeline(DateTime.Now.ToStrign(DateFormat));
OUTPUT:
20120823132544
DateTime.Now.ToString(“hh:mm”) – 如果它是C#。
哦。 只读标题。
DateTime dt = new DateTime(2008, 12, 11, Convert.ToInt32("16"), Convert.ToInt32("32"), 0);
你是什么意思“失去格式”。
如果将其转换为DateTime类型,则DateTime对象将具有dd / mm / yy和其他属性。 根据您打算如何使用该对象,您可以通过格式化字符串输出来“恢复”原始设置,如下所示:DT.ToString(“HH:mm”);
由于您没有规定您使用的是哪个DBMS,因此很难知道哪个答案对您有帮助。 如果您使用IBM Informix Dynamic Server,则只需使用数据类型“DATETIME HOUR TO MINUTE”,它将记录24小时制的值。
DateTime.Parse("16:20")
我想解决你问题的这一部分:
不会丢失格式
数据库通常将所有日期时间值存储为标准的通用格式,甚至不是人类可读的。 如果使用datetime列,则会销毁原始格式。
但是,当您检索该值时,会将其转换回您想要的任何格式。 如果你想要HH:mm
你可以得到它。