有关一下时间处理方法

         /// <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. 解决Android5.0以后DatePicker选择时间无效的bug。

    一.在布局中加上这句话. 加上了这句话后,就相当于强制用5.0以前的外观,所以外观会有所变化: 5.0以上没有这句话的外观: 加上之后的外观: 二.可以用DatePickerDialog代替

  2. grunt

    Grunt是node的自动化构建工具,可以执行像压缩, 编译, 单元测试, 代码检查以及打包发布的任务. 类似于C/C++程序通过makefile管理编译测试打包的过程,Java程序通过Maven,A ...

  3. word中公式居中、编号居右方法

    1.输入公式和序号如“Z=X+Y(1)”,不需要在二者之间加括号:2.双击横标尺的空白位置,弹出“制表符”对话框,点击“全部清除”:3.观察标尺长度,如图中所示位置(如24):4.输入标尺长度的一半( ...

  4. linux下的5个查找命令

    在Linux中,有很多方法可以做到这一点.国外网站LinuxHaxor总结了五条命令,你可以看看自己知道几条.大多数程序员,可能经常使用其中的2到3条,对这5条命令都很熟悉的人应该是不多的. 1. f ...

  5. 数据分析和R语言的那点事儿_1

    最近遇到一些程序员同学向我了解R语言,有些更是想转行做数据分析,故开始学习R或者Python之类的语言.在有其他编程语言的背景下,学习R的语法的确是一件十分简单的事.霸特,如果以为仅仅是这样的话那就图 ...

  6. Windows Phone 8.1 新特性 - 控件之列表选择控件

    本篇我们来介绍Windows Phone 8.1 新特性中的列表选择控件. 在Windows Phone 8 时代,大家都会使用 LongListSelector 来实现列表选择控件,对数据进行分组显 ...

  7. NY 325 zb的生日

    假设所有西瓜重 Asum,所求的是用 Asum / 2 的背包装,最多装下多少. 刚开始用贪心作的,WA.后来用01背包,结果TLE,数据太大.原来用的是深搜! dfs(int sum, int i) ...

  8. Linux内核--网络栈实现分析(七)--数据包的传递过程(下)

    本文分析基于Linux Kernel 1.2.13 原创作品,转载请标明http://blog.csdn.net/yming0221/article/details/7545855 更多请查看专栏,地 ...

  9. Android Meun 用法

    Android Meun 用法 点击菜单实体键弹出菜单:如下图 main_activity.xml <?xml version="1.0" encoding="ut ...

  10. poj 1702 三进制问题

    Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 3906   Accepted: 1924 Description Eva h ...