zoukankan
html css js c++ java
C#里面比较时间大小三种方法
按 Ctrl+C 复制代码
DateTime t1 = new DateTime(100); DateTime t2 = new DateTime(20); if (DateTime.Compare(t1, t2) > 0) Console.WriteLine("t1 > t2"); if (DateTime.Compare(t1, t2) == 0) Console.WriteLine("t1 == t2"); if (DateTime.Compare(t1, t2) < 0) Console.WriteLine("t1 < t2"); 1。比较时间大小的实验 string st1="12:13"; string st2="14:14"; DateTime dt1=Convert.ToDateTime(st1); DateTime dt2=Convert.ToDateTime(st2); DateTime dt3=DateTime.Now; if(DateTime.Compare(dt1,dt2)>0) msg.Text=st1+">"+st2; else msg.Text=st1+"<"+st2; msg.Text+=" "+dt1.ToString(); if(DateTime.Compare(dt1,dt3)>0) msg.Text+=" "+st1+">"+dt3.ToString(); else msg.Text+=" "+st1+"<"+dt3.ToString(); 2。计算两个时间差值的函数,返回时间差的绝对值: private string DateDiff(DateTime DateTime1,DateTime DateTime2) { string dateDiff=null; try { TimeSpan ts1=new TimeSpan(DateTime1.Ticks); TimeSpan ts2=new TimeSpan(DateTime2.Ticks); TimeSpan ts=ts1.Subtract(ts2).Duration(); dateDiff=ts.Days.ToString()+"天" +ts.Hours.ToString()+"小时" +ts.Minutes.ToString()+"分钟" +ts.Seconds.ToString()+"秒"; } catch { } return dateDiff; } 3。实现计算DateTime1-36天=DateTime2的功能 TimeSpan ts=new TimeSpan(40,0,0,0); DateTime dt2=DateTime.Now.Subtract(ts); msg.Text=DateTime.Now.ToString()+"-"+ts.Days.ToString()+"天 "; msg.Text+=dt2.ToString(); use "DateTime.Compare" static method DateTime.Compare( dt1, dt2 ) > 0 : dt1 > dt2 DateTime.Compare( dt1, dt2 ) == 0 : dt1 == dt2 DateTime.Compare( dt1, dt2 ) < 0 : dt1 < dt2 /// <summary> /// 计算两个日期的时间间隔 /// </summary> /// <param name="DateTime1">第一个日期和时间</param> /// <param name="DateTime2">第二个日期和时间</param> /// <returns></returns> private string DateDiff(DateTime DateTime1, DateTime DateTime2) { string dateDiff = null; TimeSpan ts1 = new TimeSpan(DateTime1.Ticks); TimeSpan ts2 = new TimeSpan(DateTime2.Ticks); TimeSpan ts = ts1.Subtract(ts2).Duration(); dateDiff = ts.Days.ToString()+"天" + ts.Hours.ToString()+"小时" + ts.Minutes.ToString()+"分钟" + ts.Seconds.ToString()+"秒"; return dateDiff; } 说明: 1.DateTime值类型代表了一个从公元0001年1月1日0点0分0秒到公元9999年12月31日23点59分59秒之间的具体日期时刻。因此,你可以用DateTime值类型来描述任何在想象范围之内的时间。一个DateTime值代表了一个具体的时刻 2.TimeSpan值包含了许多属性与方法,用于访问或处理一个TimeSpan值 下面的列表涵盖了其中的一部分: Add:与另一个TimeSpan值相加。 Days:返回用天数计算的TimeSpan值。 Duration:获取TimeSpan的绝对值。 Hours:返回用小时计算的TimeSpan值 Milliseconds:返回用毫秒计算的TimeSpan值。 Minutes:返回用分钟计算的TimeSpan值。 Negate:返回当前实例的相反数。 Seconds:返回用秒计算的TimeSpan值。 Subtract:从中减去另一个TimeSpan值。 Ticks:返回TimeSpan值的tick数。 TotalDays:返回TimeSpan值表示的天数。 TotalHours:返回TimeSpan值表示的小时数。 TotalMilliseconds:返回TimeSpan值表示的毫秒数。 TotalMinutes:返回TimeSpan值表示的分钟数。 TotalSeconds:返回TimeSpan值表示的秒数。 ====================================================<BR>int jg=72;//设置一个增加的时间 DateTime dt=Convert.ToDateTime("2006-4-23 12:22:05");// 设置一个初始化的时间 DateTime newdt=dt.AddHours(jg);//初始化时间加上增加的时间 DateTime nowt=DateTime.Now;//现在的时间 Response.Write("现在时间是:"+nowt+"<br>"); Response.Write("数据库时间是:"+dt+"<br>"); Response.Write("新的时间是:"+newdt+"<br>"); if(newdt<nowt)//如果相加后的时间大于现在的时间 { Response.Write("可以"); } else//否则 { Response.Write("不行"); } ====================================================== // 得到某年某月的天数 public static int GetDaysInMonth(int rYear,int rMonth) { DateTime dt1 = DateTime.Parse(rYear+"-"+rMonth+"-01"); DateTime dt2 = dt1.AddMonths(1); TimeSpan ts = dt2-dt1; return (int)ts.TotalDays; } //得到星期Text public static string GetDayOfWeekHtml(int rDayOfWeek) { switch(rDayOfWeek) { case (int)DayOfWeek.Sunday: return "<font color="#ff0000">星期日</font>"; case (int)DayOfWeek.Monday: return "<font color="#000000">星期一</font>"; case (int)DayOfWeek.Tuesday: return "<font color="#000000">星期二</font>"; case (int)DayOfWeek.Wednesday: return "<font color="#000000">星期三</font>"; case (int)DayOfWeek.Thursday: return "<font color="#000000">星期四</font>"; case (int)DayOfWeek.Friday: return "<font color="#000000">星期五</font>"; case (int)DayOfWeek.Saturday: return "<font color="#008800">星期六</font>"; default: return ""; } } // 得到某年某月的起止日期,格式为0000-00-00 public static string[] GetBeginEndDate(int rYear,int rMonth) { string[] arr = new string[2]; DateTime dt1 = DateTime.Parse(rYear+"-"+rMonth+"-01"); arr[0] = dt1.ToLongDateString(); DateTime dt2 = dt1.AddMonths(1).AddDays(-1); arr[1] = dt2.ToLongDateString(); return arr; } ========================== 在ASP中日期比较使用:DateDiff( "d", "2006-1-30", now )>0;在C#中使用:TimeSpan 代码如下: using System; using System.Collections; public class DatediffClass { public static void Main() { DateTime dt1 = DateTime.Parse("2006-04-01"); DateTime dt2 = DateTime.Parse("2006-05-01"); TimeSpan ts = dt2.Subtract(dt1); Console.WriteLine(ts.TotalDays); Console.ReadLine(); } } 如果是比较大小:DateTime.Compare(t1, t2) > 0 =================================== 1、DateTime 数字型 System.DateTime currentTime=new System.DateTime(); 1.1 取当前年月日时分秒 currentTime=System.DateTime.Now; 1.2 取当前年 int 年=currentTime.Year; 1.3 取当前月 int 月=currentTime.Month; 1.4 取当前日 int 日=currentTime.Day; 1.5 取当前时 int 时=currentTime.Hour; 1.6 取当前分 int 分=currentTime.Minute; 1.7 取当前秒 int 秒=currentTime.Second; 1.8 取当前毫秒 int 毫秒=currentTime.Millisecond; (变量可用中文) 2、Int32.Parse(变量) Int32.Parse("常量") 字符型转换 转为32位数字型 3、 变量.ToString() 字符型转换 转为字符串 12345.ToString("n"); //生成 12,345.00 12345.ToString("C"); //生成 ¥12,345.00 12345.ToString("e"); //生成 1.234500e+004 12345.ToString("f4"); //生成 12345.0000 12345.ToString("x"); //生成 3039 (16进制) 12345.ToString("p"); //生成 1,234,500.00% 4、变量.Length 数字型 取字串长度: 如: string str="中国"; int Len = str.Length ; //Len是自定义变量, str是求测的字串的变量名 5、System.Text.Encoding.Default.GetBytes(变量) 字码转换 转为比特码 如:byte[] bytStr = System.Text.Encoding.Default.GetBytes(str); 然后可得到比特长度: len = bytStr.Length; 6、System.Text.StringBuilder("") 字符串相加,(+号是不是也一样?) 如:System.Text.StringBuilder sb = new System.Text.StringBuilder(""); sb.Append("中华"); sb.Append("人民"); sb.Append("共和国"); 7、变量.Substring(参数1,参数2); 截取字串的一部分,参数1为左起始位数,参数2为截取几位。 如:string s1 = str.Substring(0,2); 8、String user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString(); 取远程用户IP地址 9、穿过代理服务器取远程用户真实IP地址: if(Request.ServerVariables["HTTP_VIA"]!=null){ string user_IP=Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString(); }else{ string user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString(); } 10、 Session["变量"]; 存取Session值; 如,赋值: Session["username"]="小布什"; 取值: Object objName=Session["username"]; String strName=objName.ToString(); 清空: Session.RemoveAll(); 11、String str=Request.QueryString["变量"]; 用超链接传送变量。 如在任一页中建超链接:<a href=Edit.aspx?fbid=23>点击</a> 在Edit.aspx页中取值:String str=Request.QueryString["fdid"]; 12、DOC对象.CreateElement("新建节点名"); 创建XML文档新节点 13、父节点.AppendChild(子节点); 将新建的子节点加到XML文档父节点下 14、 父节点.RemoveChild(节点); 删除节点 15、Response Response.Write("字串"); Response.Write(变量); 向页面输出。 Response.Redirect("URL地址"); 跳转到URL指定的页面 16、char.IsWhiteSpce(字串变量,位数)——逻辑型 查指定位置是否空字符; 如: string str="中国 人民"; Response.Write(char.IsWhiteSpace(str,2)); //结果为:True, 第一个字符是0位,2是第三个字符。 17、char.IsPunctuation('字符') --逻辑型 查字符是否是标点符号 如:Response.Write(char.IsPunctuation('A')); //返回:False 18、(int)'字符' 把字符转为数字,查代码点,注意是单引号。 如: Response.Write((int)'中'); //结果为中字的代码:20013 19、(char)代码 把数字转为字符,查代码代表的字符。 如:
按 Ctrl+C 复制代码
查看全文
相关阅读:
[VC++]利用VS2005进行dump文件调试
Release和Debug模式下成员变量初始化问题
JDBC与C++的DB访问性能
Log4J与LogBack的性能比较
WinRar命令行参数
玩弄C++:回调一个类成员函数
如何将一个模板类A作为模板类B的模板参数
HibernateException: Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTup
HibernateException: Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTup
使用jQuery发送POST,Ajax请求返回JSON格式数据
原文地址:https://www.cnblogs.com/zxh1919/p/7873731.html
最新文章
后台运行流程
安装 VSFTPD
删除 mysql 日志文件后 ,启动出错
putty 默认设置
按量复盘 阿里云服务器
phpstudy 相关配置
apicloud 初学
Symmetric Tree
Climbing Stairs
Add Two Numbers
热门文章
Search in Rotated Sorted Array
Remove Duplicate from Sorted List
Valid Parentheses
Set Matrix Zeros
Pow(x,n)
[LeetCode]-- Merge Intervals
Insert Intervals
FreeBSD设置windows启动项
libevent收集资料
C++ RAII
Copyright © 2011-2022 走看看