C#日期时间比较不正确

小蜜蜂@ 2010-08-29 01:57:12
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
string te = Convert.ToDateTime(ds.Tables[0].Rows[i][1]).ToString() + "#" + DateTime.Now + "#" + DateTime.Compare(Convert.ToDateTime(ds.Tables[0].Rows[i][1]),DateTime.Now).ToString();
StreamWriter sw = new StreamWriter( @"F:\tes.txt",true);
sw.WriteLine(te);
sw.Flush();
sw.Close();
}


数据库里面是:
2010/8/29 1:3:30
2010/8/29 1:52:10
tes.txt里面是:
2010/8/29 1:03:30#2010/8/29 1:52:08#-1
2010/8/29 1:52:10#2010/8/29 1:52:08#1
2010/8/29 1:03:30#2010/8/29 1:52:09#-1
2010/8/29 1:52:10#2010/8/29 1:52:09#1
2010/8/29 1:03:30#2010/8/29 1:52:10#-1
2010/8/29 1:52:10#2010/8/29 1:52:10#-1
2010/8/29 1:03:30#2010/8/29 1:52:11#-1
2010/8/29 1:52:10#2010/8/29 1:52:11#-1

请问和各前辈这个应该怎么实现
...全文
79 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Comeonzhou 2010-08-29
  • 打赏
  • 举报
回复
楼上的正确...
mngzilin 2010-08-29
  • 打赏
  • 举报
回复
时间是有毫秒的,所以结果是-1

要忽略毫秒,可以格式化现在时间:


DateTime.Compare(Convert.ToDateTime(ds.Tables[0].Rows[i][1]),DateTime.Now).ToString();

=========》》》

DateTime.Compare(Convert.ToDateTime(ds.Tables[0].Rows[i][1]),Convert.ToDateTime(DateTime.Now.ToString("yyyy/MM/dd hh:mm:ss"))).ToString();

110,570

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧