貌似最近很流行这个,就写了个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. JQuery Mobile 实战一

    今天我们来使用JQuery Mobile来开发一个web mobile app. 要实现的如下所示效果: 开始: 第一步:添加JS包等引用,直接去官网下载最新的JQuery Mobile 包,http ...

  2. C#微信开发回复信息

    using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Web;usi ...

  3. JSP之AJAX

    伴随着Web开发越来越广泛,越来越多网站开始应用AJAX.事实上,Ajax在Web应用带来的变化,我们已经在不知不觉中体验过了.例如,百度搜索提示,会员注册…… 在传统Web应用模式中,页面中用户的每 ...

  4. git merge 到 非当前 branch

    1. Add a remote alias for your local repository, ex: git remote add self file:///path/to/your/reposi ...

  5. C语言知识总结(2)

    选择结构-if if(表达式) {} {}为作用域 多重if-else  例如: #include <stdio.h> int main(){ ; ){ printf("没有购物 ...

  6. 20171107--SQL变量,运算符,存储过程

    create database shujuku03 go use shujuku03 go create table jiaoshi--创建jiaoshi表-- ( code int primary ...

  7. php面向对象的基础:创建OOP的方法

    方法的创建 class Computer{ public function _run(){ return '我是类的一个公共方法'; } } $computer = new Computer(); / ...

  8. Flex设置外部浏览器

    Flex Builder默认的外围浏览器是微软 Internet Explorer. 如果想改成Firefox,步骤如下: Window>Preferences>General>We ...

  9. iOS网络加载图片缓存策略之ASIDownloadCache缓存优化

    iOS网络加载图片缓存策略之ASIDownloadCache缓存优化   在我们实际工程中,很多情况需要从网络上加载图片,然后将图片在imageview中显示出来,但每次都要从网络上请求,会严重影响用 ...

  10. WEB应用中的SESSION知多少?

    作为一名WEB开发程序员,对session的理解是最基础的,但是现状是WEB程序员遍地都是,随便一划拉一大把,不过估计能把session能透彻理解的人应该不是很多,起码我之前对此是知之甚少,偶然看到的 ...