我正在尝试从数据库获取时间戳(时间戳:01.40.07.016334),但是当我尝试将 mysqlDataReader 转换为 DateTime 时,我得到这个“20-11-2017 14:02:19”,这确实不遵循我制作的预设“HH.mm.ss.ffffff”。
我的数据库(mysql)时间戳是一个varchar,看起来像这样“01.40.07.016334”。
DateTime fam = DateTime.ParseExact(rdrDagData[0].ToString(),
"HH.mm.ss.ffffff", CultureInfo.CurrentCulture);
Console.WriteLine(fam);
有人可以帮助我吗?
最佳答案
您有一个 DateTime
变量:
DateTime fam
并且您正在使用其默认字符串表示形式进行输出:
Console.WriteLine(fam);
如果您想要自定义格式,请使用 custom format string :
Console.WriteLine(fam.ToString("HH.mm.ss.ffffff"));
<小时/>
但是,这里还有一些更根本的问题。一方面,如果在数据库中您拥有的是当前采用您想要显示的“格式”的字符串值,则只需显示您拥有的内容:
Console.WriteLine(rdrDagData[0].ToString());
但是,真正的问题是...为什么要将日期/时间值存储为字符串?按原样存储数据,而不是按您想要显示的数据存储。您有日期/时间值,按原样存储它们。唯一需要“格式化”它们的时候是为用户显示它们时。
关于c# - mysql +c# 如何将 mysqldataReader 转换为正确的日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47393071/