1获取当前月份年份
- import java.util.Calendar;
- public class Main {
- public static void main(String[] args) {
- Calendar now = Calendar.getInstance();
- System.out.println("Current Year is : " + now.get(Calendar.YEAR));
- // month start from 0 to 11
- System.out.println("Current Month is : " + (now.get(Calendar.MONTH) + 1));
- System.out.println("Current Date is : " + now.get(Calendar.DATE));
- }
- }
2获取前一天前一月的日期
- Calendar calendar = Calendar.getInstance();//此时打印它获取的是系统当前时间
- calendar.add(Calendar.DATE, -1); //得到前一天
- String yestedayDate = new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime());
- calendar.add(Calendar.MONTH, -1); //得到前一个月
- int year = calendar.get(Calendar.YEAR);
- int month = calendar.get(Calendar.MONTH)+1; //输出前一月的时候要记得加1
3字符串转为日期格式
- String date = "2010-02-01 23:59:59";
- SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
- try {
- Date d = sf.parse(date);
- System.out.println(sf.format(d));
- } catch (ParseException e) {
- e.printStackTrace();
- }
4完整的一个例子
- import java.util.Date;
- import java.util.Calendar;
- import java.text.SimpleDateFormat;
- public class TestDate{
- public static void main(String[] args){
- Date now = new Date();
- SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//可以方便地修改日期格式
- String hehe = dateFormat.format( now );
- System.out.println(hehe);
- Calendar c = Calendar.getInstance();//可以对每个时间域单独修改
- int year = c.get(Calendar.YEAR);
- int month = c.get(Calendar.MONTH);
- int date = c.get(Calendar.DATE);
- int hour = c.get(Calendar.HOUR_OF_DAY);
- int minute = c.get(Calendar.MINUTE);
- int second = c.get(Calendar.SECOND);
- System.out.println(year + "/" + month + "/" + date + " " +hour +
- ":" +minute + ":" + second);
- }
- }
JS中获取当前时间点前一天时间
- var date=new Date();
- var dat_year=date.getYear();
- var dat_month=date.getMonth();
- var dat_day=date.getDay();
- var dat_d=date.getDate();
- // alert(dat_d);
- var uom=new Date(dat_year,dat_month,dat_d);
- // alert(uom);
- // alert(date);
- uom.setDate(uom.getDate()-1);
- // alert(uom);
- var new_dd=uom.getDate();
- var new_mm=uom.getMonth();
- var new_yy=uom.getFullYear();
JS实现将字符串转为Date类型的数据
- var str="2012-09-20";
- var dat = new Date(Date.parse(str.replace(/-/g,"/")));
- var month=dat.getMonth();
- alert(month);
例子2
- var s = "2012/08/06";
- var dateString = new Date(Date.parse(s));
- alert(dateString.getMonth());
例子3
- var s = "2012/08/06 12:02:03";
- var dateString = new Date(Date.parse(s));
- alert(dateString.getMonth());
- var t=dateString.toLocaleString();
- var st=dateString.toLocaleTimeString();
- alert(st);
Date类型常用方法
- date.getYear(); //获取当前年份(2位)
- date.getFullYear(); //获取完整的年份(4位,1970-????)
- date.getMonth(); //获取当前月份(0-11,0代表1月)
- date.getDate(); //获取当前日(1-31)
- date.getDay(); //获取当前星期X(0-6,0代表星期天)
- date.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
- date.getHours(); //获取当前小时数(0-23)
- date.getMinutes(); //获取当前分钟数(0-59)
- date.getSeconds(); //获取当前秒数(0-59)
- date.getMilliseconds(); //获取当前毫秒数(0-999)
- date.toLocaleDateString(); //获取当前日期
- var mytime=date.toLocaleTimeString(); //获取当前时间
- date.toLocaleString( ); //获取日期与时间 即年月日 时分秒
近日在网上看到了牛人
一句代码
- var today = new Date();
- alert([
- ' 今天的日期为:' + today.toLocaleString(),
- '七天前的日期为:' + new Date((+today) - 7*24*60*60*1000).toLocaleString()
- ].join('\n'));
这是计算当前时间之前7天的时间点的代码 so easy。。。。
上一个例子吧
- var s="2012/1/1 12:28:15";
- var date=new Date(Date.parse(s));
- alert(new Date((+date)-24*3600*1000).toLocaleString());
这样就能求的给定时间的前一天时间 这应该是最简单的方法了
(某一天用到了 贴点代码过来)
- var date = new Date(Date.parse("1989/1/10 10:12:13"))
- alert(date.getFullYear()+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日"+
- date.getHours()+"时"+date.getMinutes()+"分"+date.getSeconds()+"秒"
- );
- // 结果 1989年1月10日10时12分13秒
- var sj = new Date(1888,1,10,12,12,12);
- alert(sj.getFullYear()+"年"+sj.getMonth()+"月"+sj.getDate()+"日"+
- sj.getHours()+"时"+sj.getMinutes()+"分"+sj.getSeconds()+"秒"
- );
- //结果 1988年1月10日12时12分12秒
顺便我又用Java写了点 上代码
- Calendar c = Calendar.getInstance();
- long l=c.getTimeInMillis();
- long res=l-24*3600*1000;
- c.setTimeInMillis(res);
- String s = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(res);
- System.out.println(s);
- String st="2012-12-01 12:12:31";
- SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- Date d = sf.parse(st);//要加try catch 我直接throws Exception了
- long t = d.getTime();
- long p=t-24*3600*1000;
- String test = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(p);
- System.out.println(test);
JS的内部机制应该就是 将字符串转成 1234/12/12 的形式然后转成Date类型 具体不是很清楚 找到后增加