如何将日期转换为8位整数
本文关键字:8位 整数 转换 日期 | 更新日期: 2023-09-27 18:24:18
如何将Date
02/14/2012转换为格式"20120214"?
我想把数据库中的日期保存为整数,因为它看起来更灵活。
试试这个:
DateTime date = new DateTime(2012, 02, 14);
string toDb = date.ToString("yyyyMMdd");
更新哦,由于有一条注释,我敦促您使用数据库引擎中的DateTime字段,而不是字符串格式。将日期时间存储为文本并不灵活。有些引擎(如Sqlite)不支持日期时间字段,但大多数引擎都支持。对日期时间使用字符串格式会迫使您在需要从数据库获取值或将值保存到数据库的任何位置进行手动解析和转换。很容易忘记它一次什么会导致错误很难找到。在使用日期时间字段时,您不需要记住它。
请尝试。
string[] dtPart = "02/14/2012".Split('/');
DateTime dt = new DateTime(int.Parse(dtPart[2]), int.Parse(dtPart[0]), int.Parse(dtPart[1]));
int result = int.Parse(dt.ToString("yyyyMMdd"));
DateTime.Now.ToString("yyyyMMdd");如果需要,请使用Convert.ToUInt32转换为整数。
但我认为DateTime类型比数据库中的整数或字符串更好。然后根据需要格式化DateTime。
使用String.Format()
函数
关于String.Format()
的更多信息http://www.csharp-examples.net/string-format-datetime/
您可以在.ToString上为DateTime实例使用自定义DateTime格式字符串:http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx
dateTime.ToString("yyyyMMdd")
然而,几乎所有的数据库都有一种将日期存储为日期而不是字符串的方法,您可能需要对此进行研究。如果对日期进行计算,将日期保留为日期数据类型将有助于避免潜在的本地化问题和其他与日期相关的问题。
使用.ToString("yyyMMdd")
试试这个:
Msgbox(Now.ToString("yyyMMdd"))