有关一下时间处理方法

         /// <summary>
/// 将时间转换成几小时、几天之类的格式
/// </summary>
/// <param name="maxDays">最多显示几天前</param>
/// <param name="minuteDif">几分钟之内显示成刚刚</param>
/// <param name="dateTime">需要转换的时间</param>
/// <returns></returns>
public static string ConvertDateToTime(DateTime? dateTime,int maxDays=,int minuteDif=)
{
string hoursAgo = "小时前";
string minuteAgo = "分钟前";
string dayAgo = "天前";
if (dateTime.HasValue)
{
if (dateTime.Value.AddMinutes(minuteDif) > DateTime.Now)//小于设置的时间则显示为刚刚
{
return "刚刚";
}else if (dateTime.Value.AddMinutes() > DateTime.Now)//一小时之内显示分钟
{
int maxMinute = DateTime.Now.Minute;
int minMinute=dateTime.Value.Minute;
return GetPositiveNumber(minMinute,maxMinute,)+minuteAgo;
}else if((dateTime.Value.AddHours()>DateTime.Now))//一天之内显示几小时之前
{
int maxHour = DateTime.Now.Hour;
int minHour = dateTime.Value.Hour;
return GetPositiveNumber(minHour, maxHour, ) + hoursAgo;
}else if (dateTime.Value.AddDays(maxDays) > DateTime.Now)//显示几天前
{
int maxDay = DateTime.Now.Day;
int minDay = dateTime.Value.Day;
return GetPositiveNumber(minDay, maxDay, ) + dayAgo;
}
else
{
return dateTime.Value.Date.ToString("MM-dd");
}
}
return null;
}
/// <summary>
/// 主要计算时间差
/// </summary>
/// <param name="minValue">需要换算时间值</param>
/// <param name="maxValue">当前时间值</param>
/// <param name="reference">换算率</param>
/// <returns></returns>
public static int GetPositiveNumber(int minValue, int maxValue, int reference)
{
return maxValue - minValue > ? maxValue - minValue : maxValue - minValue + reference;
} #region 把秒转换成分钟
/// <summary>
/// 把秒转换成分钟
/// </summary>
/// <returns></returns>
public static int SecondToMinute(int Second)
{
decimal mm = (decimal)((decimal)Second / (decimal));
return Convert.ToInt32(Math.Ceiling(mm));
}
#endregion #region 返回某年某月最后一天
/// <summary>
/// 返回某年某月最后一天
/// </summary>
/// <param name="year">年份</param>
/// <param name="month">月份</param>
/// <returns>日</returns>
public static int GetMonthLastDate(int year, int month)
{
DateTime lastDay = new DateTime(year, month, new System.Globalization.GregorianCalendar().GetDaysInMonth(year, month));
int Day = lastDay.Day;
return Day;
}
#endregion #region 时分秒转换成秒
/// <summary>
/// 时分秒转换成秒
/// </summary>
public static int TimeToSecond(int hour, int minute, int second)
{
TimeSpan ts = new TimeSpan(hour, minute, second);
return (int)ts.TotalSeconds;
}
#endregion #region 秒转换为时分秒
/// <summary>
/// 秒转换为时分秒
/// </summary>
/// <param name="seconds"></param>
/// <returns></returns>
public static string SecondToDateTime(int seconds)
{
TimeSpan ts = new TimeSpan(, , seconds);
string totalTime = string.Format("{0:00}:{1:00}:{2:00}", (int)ts.TotalHours, ts.Minutes, ts.Seconds);
return totalTime;// (int)ts.TotalHours + ":" + ts.Minutes + ":" + ts.Seconds;
}
#endregion #region 返回时间差
public static 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();
TimeSpan ts = DateTime2 - DateTime1;
if (ts.Days >= )
{
dateDiff = DateTime1.Month.ToString() + "月" + DateTime1.Day.ToString() + "日";
}
else
{
if (ts.Hours > )
{
dateDiff = ts.Hours.ToString() + "小时前";
}
else
{
dateDiff = ts.Minutes.ToString() + "分钟前";
}
}
}
catch
{ }
return dateDiff;
}
#endregion #region 时间格式化
/// <summary>
/// 时间格式化
/// </summary>
/// <param name="obj"></param>
/// <param name="format"></param>
/// <param name="isFormat"></param>
/// <returns></returns>
public static string DateTimeFormat(object obj, string format, bool isFormat)
{
string str = string.Empty;
if (null != obj && PageValidate.IsDateTime(obj.ToString()))
{
if (isFormat)
{
str = Convert.ToDateTime(obj).ToString(format);
}
else
{
str = obj.ToString();
}
}
return str;
}
#endregion

asp.net 有关时间各种(输出)处理的更多相关文章

  1. asp.net C# 时间格式大全

    asp.net C# 时间格式大全DateTime dt = DateTime.Now;//   Label1.Text = dt.ToString();//2005-11-5 13:21:25//  ...

  2. asp.net(C#)时间相减 得到天数、小时、分钟、秒差

    asp.net(C#)时间相减 得到天数.小时.分钟.秒差 DateTime dtone = Convert.ToDateTime("2007-1-1 05:00:00"); Da ...

  3. ls按时间排序输出文件列表

    文件转自:http://www.2cto.com/os/201303/197829.html ls按时间排序输出文件列表   首先,ls --help查看ls相关的与时间排序相关的参数:   > ...

  4. 使Asp.net Core同时支持输出Json/Xml

    我们知道Asp.net Core是支持输出为Json格式的.同时也支持输出为xml格式.只要我们正确的配置.并在Request时指定正确的Accept,即可根据不同的Header来输出不同的格式. 前 ...

  5. Python中日期和时间格式化输出的方法

    本文转自:https://www.jb51.net/article/62518.htm 本文实例总结了python中日期和时间格式化输出的方法.分享给大家供大家参考.具体分析如下: python格式化 ...

  6. ASP.NET 日期 时间 年 月 日 时 分 秒 格式及转换

    在平时编码中,经常要把日期转换成各种各样的形式输出或保持,今天专门做了个测试,发现DateTime的ToString()方法居然有这么多的表现形式,和大家一起分享. DateTime time=Dat ...

  7. ASP.Net超时时间已到解决办法-

    解决办法 1.在代码里面,把未关闭的连接关闭 2.扩大共享池,方法如下: 解决方法可以是修改连接池的连接生存期,因为默认值是60秒,即连接从应用程序被释放后可以在池中保存的时间. 具体操作步骤如下: ...

  8. 【转】Asp.net中时间格式化的6种方法详细总结

    1. 数据控件绑定时格式化日期方法: 代码如下: <asp:BoundColumn DataField="AddTime" HeaderText="添加时间&quo ...

  9. Asp.net中向前端输出JS的一些调用

    最近突然写ASP.NET项目,用到向前台输出JS脚本,但是以前在MVC里是通过异步或者一些方法来调用,但是ASP.net用到的很少.在网上找到一个HELPER.CS.保存一下,以后再用. using ...

随机推荐

  1. 从程序员到CTO的Java技术路线图 作者:zz563143188

    在技术方面无论我们怎么学习,总感觉需要提升自已不知道自己处于什么水平了.但如果有清晰的指示图供参考还是非常不错的,这样我们清楚的知道我们大概处于那个阶段和水平. Java程序员 高级特性 反射.泛型. ...

  2. Eclipse Debug

    [IT168 专稿]调试的方法虽然千千万万,但归根结底,就是找到引发错误的代码.Eclipse调试器的目标是让程序员能对本地或远程程序进行错误侦测与诊断.该调试器提供所有标准调试功能,包括进行单步执行 ...

  3. Android应用:StatusBar状态栏、NavigationBar虚拟按键栏、ActionBar标题栏、Window屏幕内容区域等的宽高

    一.屏幕中各种栏目以及屏幕的尺寸 当我们需要计算屏幕中一些元素的高度时,或许需要先获取到屏幕或者各种栏目的高度,下面这个类包含了Status bar状态栏,Navigation bar虚拟按键栏,Ac ...

  4. Python 5 —— OOP

    OOP class MyClass: y = None def __init__(self,x,y): self.__x = x self.y = y def getx(self): return s ...

  5. Xenu Link Sleuth-简单使用

    1.工具说明 xenu link sleuth,主要用于测试网站死链接.包括图片.链接. 下载地址:http://home.snafu.de/tilman/xenulink.html#Download ...

  6. dataGrid转换dataTable

    #region dataGrid转换dataTable   /// <summary>   /// dataGrid转换dataTable   /// </summary>   ...

  7. javascript练习-定义子类

    function defineSubclass(superclass, //父类的构造函数 constructor, //新的子类的构造函数 methods, //实例方法:复制至原型中 static ...

  8. 我的Sharepoint母版页的使用

    在Sharepoint 2010母版页文件夹里面,有一个叫v4.master的母版页文件. 在它的基础上修改成想要的母版页.我们用最少的修改完成我们想要的效果. 我们有时是要这样的一个母版页,顶部Ri ...

  9. erlang日志功能。

    用cowboy这个库,没有日志功能,所以研究了otp提供的日志功能. 1.启动SASL的方式 erl –boot start_sasl 默认配置文件下启动SASL, {env, [{sasl_erro ...

  10. ELb表达式

    主要用于servlet的4个作用域取值:pageScope.requestScope.sessionScope.applicationScope 取值顺序依次从小到大.取值方式如:操作javabean ...