下面是一个例子:

using System;
namespace HelloWorld
{
  class Hello
{
      
      private static string DateDiff(DateTime DateTime1, DateTime DateTime2)
 {string dateDiff = null;
  TimeSpan ts = DateTime1.Subtract(DateTime2).Duration();
 dateDiff = ts.Days.ToString()+"天"+ ts.Hours.ToString()+"小时"+ ts.Minutes.ToString()+"分钟"+ ts.Seconds.ToString()+"秒";
 return dateDiff;
 }
      
  private static void Main()
{
      DateTime t1;
      t1 = DateTime.Now;
      
      DateTime t2 = DateTime.Now  ;
      t2 = t2.AddDays(1) ;
      
      System.Console.WriteLine(DateDiff(t1,t2));
      
  System.Console.WriteLine("hello");
  System.Console.ReadLine();
}
}
}

我在 <<delphi陷阱大全>>写了这个现象,在delphi里面Tdatetime, TDate ,Ttime实际上都是一个浮点数 。

写程序的时候很容易出现比较两个日期的时候,要么忽略掉日期部分,要么忽略掉时间部分,以为是一样的。

比如数据库里面有一个时间,

'1970-0-0 12:11:11' 我们将他存到TTime,实际上带有时间部分。

而C#是将三种类型合并了的,不会产生误解,做的时候一定会考虑到是比较日期,时间,还是两者都要处理。

细微之处见真章!

Good idea!

c#比delphi先进的地方的更多相关文章

  1. git学习笔记04-将本地仓库添加到GitHub远程仓库-git比svn先进的地方

    第1步:创建SSH Key.在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步. 如果没有,打开Shel ...

  2. IT行业常谈的优雅

    起因 前几天在群里和以前一起在成都培训的同学谈论到了求职, 有一位朋友说他在某家外包公司试用失败了, 然后我说了句:不要去外包公司.即使工资高一点. 其实说的时候也没考虑到他本人的处境, 毕竟还房贷资 ...

  3. 【Pro ASP.NET MVC 3 Framework】.学习笔记.6.SportsStore:导航

    在之前的章节,偶们设置了核心的基础设施,现在我们将使用基础设计添加关键特性,你将会看到投资是如何回报的.我们能够很简单很容易地添加重要的面向客户的特性.沿途,你也会看到一些MVC框架提供的附加的特性. ...

  4. 实战MySQL集群,试用CentOS 6下的MariaDB-Galera集成版

    说起mysql的集群估计很多人会首先想起mysql自带的replication或者mysql-mmm.mysql-mmm其实也是基于mysql自带的replication的,不过封装的更好用一些,但是 ...

  5. Objective-C 学习笔记(Day 1)

    -------------------------------------------- Hello World //引入头文件 //c中的引入头文件的方式 //#include <stdio. ...

  6. Python用format格式化字符串

    format是是python2.6新增的一个格式化字符串的方法,相对于老版的%格式方法,它有很多优点. 1.不需要理会数据类型的问题,在%方法中%s只能替代字符串类型 2.单个参数可以多次输出,参数顺 ...

  7. 33个优秀的HTML5应用演示 (转)

    33个优秀的HTML5应用演示 (转) HTML5能做什么?取代Flash?制作动画?开发程序应用?这些都只是HTML5的一小部分功能而已. 大家可能听到很多关于Flash是否会被HTML5取代的讨论 ...

  8. Python中的format函数

    format是python2.6新增的一个格式化字符串的方法,相对于老版的%格式方法,它有很多优点. 1.不需要理会数据类型的问题,在%方法中%s只能替代字符串类型 2.单个参数可以多次输出,参数顺序 ...

  9. u3d Mecanim动画

    作为Unity4.0的主要更新功能,Mecanim动画被寄予了很多的期望.系统有先进的地方,也有不足的地方.这些我们留到最后再来总结. 阿赵粗略的学习了一下,写下以下的教程.这篇教程简单的说明了Mec ...

随机推荐

  1. iptables禁止别人,允许自己

    这里举个例子,以ping为案例:禁止别人ping自己,但允许自己ping别人. [root@localhost ~]# iptables -A INPUT -p icmp --icmp-type 8 ...

  2. linux安装mysql5.1

    一.卸载mysql 1.检测系统是否已经安装过mysql或其依赖,若已装过要先将其删除 # yum list installed | grep mysql mysql-libs.i686        ...

  3. 使用solr界面管理工具创建core 不能用的解决方法

    可以用命令行进行创建  首先要先进入 solr所属的 用户 solr 中 ./solr create -c solr_sample 然后创建 你的core  显示以下信息 就创建成功了 成功之之后可以 ...

  4. RecyclerView的单击和长按事件(转)

    转自:http://www.jianshu.com/p/f2e0463e5aef 前言 上一篇文章揭开RecyclerView的神秘面纱(一):RecyclerView的基本使用中,主要讲述了Recy ...

  5. 【pyspider】关于匹配html的数据

    今天刚刚接触pyspider,在调试的时候注意匹配数据可以这样写: <div class="download-wp">         <a data-app-i ...

  6. Win7下VB6.0不能加载mscomctl.ocx的解决办法

    下载这个:http://pan.baidu.com/s/1sjJgrbJ 然后在命令框下注册这个组件: regsvr32 mscomctl.ocx 即可

  7. 每月IT摘录201811

    技术 1.打牢基础,从会使用-了解原理-了解思想一步一步来,最怕基础很弱但却以什么都用过为荣的人,这样的人我招进来也只是初级而已,工作年限再多也没有用.少林里面,有功和拳之分,如蛇拳猴拳是拳,马步功石 ...

  8. 关于后台执行JS代码总结

    方法一.FineUI的 pagecontext对象 string js="functionName();"; PageContext.RegisterStartUpScript(j ...

  9. Ubuntu虚拟机全屏问题

    方法一:修改分辨率 xrandr查看能用的 xrandr -s 1920x1200改变. 方法二:安装新vmtools apt-get install open-vm-tools apt-get in ...

  10. golang语言中os/user包的学习与使用

    package main; import ( "os/user" "fmt" ) func main() { //返回当前用户的结构 u, _ := user. ...