加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何在datatable / datagridview中以小时,分钟,秒,100表示

发布时间:2020-12-15 23:49:07 所属栏目:百科 来源:网络整理
导读:我是一名嵌入式c程序员.我之前使用过c#,但这是我第一次尝试复杂的,面向对象的项目. 我创建了一个数据表并链接到datagridview,以便在Windows窗体中显示数据. 到目前为止它运作良好.数据以int形式存储,主要包括自100秒之后的事件信息以来的时间. (这是比赛计时
我是一名嵌入式c程序员.我之前使用过c#,但这是我第一次尝试复杂的,面向对象的项目.

我创建了一个数据表并链接到datagridview,以便在Windows窗体中显示数据.

到目前为止它运作良好.数据以int形式存储,主要包括自100秒之后的事件信息以来的时间. (这是比赛计时系统的前端).因此,例如12345表示123.45秒.

我想以2:03.45的形式表明这一点

我知道可以选择以日期和时间格式在数据表中存储数据.但是我不确定这是否能满足我的要求…没有日期要求,而且似乎没有覆盖100秒.

我可以格式化一个字符串,但这似乎有点笨重,所以想检查没有更好的方法.此外,我需要能够使用datagridview的排序功能,根据最短的时间对每列进行排序.这目前有效,但我不确定它会用字符串吗?

解决方法

您可以创建TimeSpan,然后将其格式化为您想要的任何格式:

TimeSpan span = TimeSpan.FromMinutes(123.45);
string label = span.ToString(@"hh:mm:ss:ff");

输出:

02:03:27

所以现在如果你希望输出为123分钟,45分钟为秒

double smd = 123.45;
TimeSpan span = TimeSpan.FromMinutes(smd);
string label = span.ToString(@"hh:mm") + ":" + (int) (((decimal) smd % 1) * 100);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读