貌似最近很流行这个,就写了个js函数实现之

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script language="javascript">
function stringToDateTime(postdate)
{
var second = 1000;
var minutes = second*60;
var hours = minutes*60;
var days = hours*24;
var months = days*30;
var twomonths = days*365;
var myDate = new Date(Date.parse(postdate));
if (isNaN(myDate))
{
myDate =new Date(postdate.replace(/-/g, "/"));
}
var nowtime = new Date();
var longtime =nowtime.getTime()- myDate.getTime();
var showtime = 0;
if( longtime > months*2 )
{
return postdate;
}
else if (longtime > months)
{
return "1个月前";
}
else if (longtime > days*7)
{
return ("1周前");
}
else if (longtime > days)
{
return(Math.floor(longtime/days)+"天前");
}
else if ( longtime > hours)
{
return(Math.floor(longtime/hours)+"小时前");
}
else if (longtime > minutes)
{
return(Math.floor(longtime/minutes)+"分钟前");
}
else if (longtime > second)
{
return(Math.floor(longtime/second)+"秒前");
}else
{
return(longtime+" error ");
}
} document.write(stringToDateTime("2009-05-24 15:05:00")); </script>
</HEAD>
<BODY >
</BODY>
</HTML>

  

最近研究android,用java写的实现方法

public static String getTimeDiff(Date date) {
Calendar cal = Calendar.getInstance();
long diff = 0;
Date dnow = cal.getTime();
String str = "";
diff = dnow.getTime() - date.getTime(); if (diff > 2592000000L) {//30 * 24 * 60 * 60 * 1000=2592000000 毫秒
str="1个月前";
} else if (diff > 1814400000) {//21 * 24 * 60 * 60 * 1000=1814400000 毫秒
str="3周前";
} else if (diff > 1209600000) {//14 * 24 * 60 * 60 * 1000=1209600000 毫秒
str="2周前";
} else if (diff > 604800000) {//7 * 24 * 60 * 60 * 1000=604800000 毫秒
str="1周前";
} else if (diff > 86400000) { //24 * 60 * 60 * 1000=86400000 毫秒
//System.out.println("X天前");
str=(int)Math.floor(diff/86400000f) + "天前";
} else if (diff > 18000000 ) {//5 * 60 * 60 * 1000=18000000 毫秒
//System.out.println("X小时前");
str=(int)Math.floor(diff/18000000f) + "小时前";
} else if (diff > 60000) {//1 * 60 * 1000=60000 毫秒
//System.out.println("X分钟前");
str=(int)Math.floor(diff/60000) +"分钟前";
}else{
str=(int)Math.floor(diff/1000) +"秒前";
}
return str;
}

  

网上有用C#后台实现的方法,为方便查看就转贴到下面吧:)

public string DateStringFromNow(DateTime dt)
{
TimeSpan span = DateTime.Now - dt;
if (span.TotalDays >60)
{
return dt.ToShortDateString();
}
else
if ( span.TotalDays >30 )
{
return
"1个月前";
}
else
if (span.TotalDays >14)
{
return
"2周前";
}
else
if (span.TotalDays >7)
{
return
"1周前";
}
else
if (span.TotalDays >1)
{
return
string.Format("{0}天前", (int)Math.Floor(span.TotalDays));
}
else
if (span.TotalHours >1)
{
return
string.Format("{0}小时前", (int)Math.Floor(span.TotalHours));
}
else
if (span.TotalMinutes >1)
{
return
string.Format("{0}分钟前", (int)Math.Floor(span.TotalMinutes));
}
else
if (span.TotalSeconds >=1)
{
return
string.Format("{0}秒前", (int)Math.Floor(span.TotalSeconds));
}
else
{
return
"1秒前";
}
}

  转自:http://www.cnblogs.com/Excellent/archive/2009/05/24/1488270.html

JAVASCRIPT、ANDROID、C#分别实现普通日期转换多少小时前、多少分钟前、多少秒的更多相关文章

  1. .net OADate 转javascript的Datetime js 5位 日期 转换

    以下是将.net的OADate转成javascript的DateTime函数. 其中参数oadate是.net那里传过来的UTC时间的double.记得 一定是UTC时间. .net Double o ...

  2. 原生JS 将时间转换成几秒前,几分钟前…常用于评论回复功能

    //格式化时间 留备用~ function getDateDiff(dateStr) { var publishTime = dateStr / 1000, d_seconds, d_minutes, ...

  3. Javascript兼容各浏览器的日期转换

    var date = new Date(Date.parse("2015-09-05".replace(/-/g,"/")));'2015-09-05'是无法被 ...

  4. web实践小项目<一>:简单日程管理系统(涉及html/css,javascript,python,sql,日期处理)

    暑假自学了些html/css,javascript和python,苦于学完无处练手几乎过目即忘...最后在同学的建议下做了个简单日程管理系统.借第一版完成之际,希望能将实践期间犯过的错误和获得的新知进 ...

  5. Android Bitmap 和 ByteArray的互相转换

    Android Bitmap 和 ByteArray的互相转换 移动平台图像处理,需要将图像传给native处理,如何传递?将bitmap转换成一个 byte[] 方便传递也方便cpp代码直接处理图像 ...

  6. springMvc的日期转换之二

    方式一:使用@InitBinder注解实现日期转换 前台页面: 后台打印: 方式二:处理多种日期格式类型之间的转换 采用方式:由于binder.registerCustomEditor(Date.cl ...

  7. Struts2中Date日期转换的问题

      今天跑程序的时候莫名其妙的出现了下面的一个异常: java.lang.NoSuchMethodException:com.ca.agent.model.mybatis.ApprovalInforC ...

  8. Js 日期转换函数(UTC时间转换及日期想加减)

    IOS上Js日期转换中new Date("yyyy-mm-dd")不能正常工作,必须使用new Date("yyyy/MM/dd"); 日期相加减: Date. ...

  9. json日期转换

    //调用 ChangeDateFormat(CreatTime) //json日期转换 function ChangeDateFormat(jsondate) { jsondate = jsondat ...

随机推荐

  1. 设置ORACLE数据库游标大小

    先用超级管理员(sys)登陆服务器: sqlplus "sys/***@orcl as sysdba" 连接到:Oracle 查看ORACLE最大游标数: SQL> show ...

  2. 运维人愿意听到的话 vs 不愿意听到的话

    在公司兼做了接近两年的远程运维工作,与内部打交道的过程中听到各种各样的话, 简单摘列一下那些似曾相识的愿意.不愿意听到的话: ”先别操作,帮忙先拷贝日志!我们调查一下答复!“  vs  ”你先重启一下 ...

  3. ASP.NET,web.config 中SessionState的配置

    web Form 网页是基于HTTP的,它们没有状态, 这意味着它们不知道所有的请求是否来自同一台客户端计算机,网页是受到了破坏,以及是否得到了刷新,这样就可能造成信息的丢失. 于是, 状态管理就成了 ...

  4. Python Tool Visual Studio简单使用

    由于一直在做.NET的开发,一直用的IDE是VS系列的,所以想用VS也能开发Python,刚好微软提供一个插件PTVS(Python Tool Visual Studio)专门应用于Python开发的 ...

  5. C# Ajax 手机发送短信验证码 校验验证码 菜鸟级别实现方法

    1.Ajax请求处理页面: using System; using System.Collections.Generic; using System.Linq; using System.Web; u ...

  6. UILabel自适应高、宽

    根据Label和字体大小自适应高度 - (CGFloat)getHeightWithLabel:(UILabel *)label andFontSize:(CGFloat)size { label.n ...

  7. 【学习笔记】【C语言】函数

    一. 什么是函数 任何一个C语言程序都是由一个或者多个程序段(小程序)构成的,每个程序段都有自己的功能,我们一般称这些程序段为“函数”.所以,你可以说C语言程序是由函数构成的. 比如你用C语言编写了一 ...

  8. 【转义字符】HTML 字符实体&lt; &gt: &amp;等

    在开发中遇到javascript从后台获取的url 会被转义,如:http://localhost:8080/Home/Index?a=14&b=15&c=123,想把它转成http: ...

  9. (转)Linux概念架构的理解

    英文原文:Conceptual Architecture of the Linux Kernel 摘要 Linux kernel成功的两个原因:(1)架构设计支持大量的志愿开发者加入到开发过程中:(2 ...

  10. 济南学习 Day2 T2 am

    [问题描述]有N个数,随机选择一段区间,如果这段区间的所有数的平均值在[l,r]中则你比较厉害.求你比较厉害的概率.[输入格式]第一行有三个数N,l,r,含义如上描述.接下来一行有