String curDatetime = "2010-05-24 14:33:22";java如何实现加1天变成2010-05-25 14:33:22 而不改变时间,只改变天数。
解决方案 »
- java递归中的返回问题
- java编程 求助 关于类的一些小程序
- 请问:String s1 = new String("abc");和String s2 = "abc";有什么不同?
- swt中可不可以像vb一样通过拖拽控件来编写界面
- IDE达人乱入,介绍一下各种ide,另外,各位用jcreator的说一下jc到底有什么突出的优点
- 一个简单的java问题,高分求助!!!
- 在JAVA中可不可以有类似宏替换功能,比如以一个参数字符串为名,实例化一个类名(有内容)!
- 为什么IE不显示数据?
- 如何判断一个对象是否在一定时间内一直在一个队列中而没有被取走过?
- 关于多态的实验
- JAVA怎么入门快些,有什么好书啊。
- 多线程问题
calendar.add(Calendar.DAY,1);
System.out.println(calendar.getTime());
要合适和你的一样就是DateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
df.format(calendar.getTime());
可以用SimpleDateFormat
longTime = changeDate.getTime();
longTime += 86400000;
// 根据毫秒获得日期
Date newDate = new Date(longTime);
// 日期格式转换为字符串
String returnDate = formatter.format(newDate);
SimpleDateFormat sdf=new S...("yyyy-MM-dd mm:hh:ss");
Date d1=sdf.parse(curDatetime);
Date d2=new Date(d1.getTime()+24*60*60*1000);
String s=sdf.format(d2);思路就是这样,方法参数你再调整调整。
SimpleDateFormat formatter = new SimpleDateFormat(yyyy-MM-dd HH:mm:ss);
String curDatetime = "2010-05-24 14:33:22";
Date changeDate = formatter.parse(curDatetime);
longTime = changeDate.getTime();
longTime += 86400000;
// 根据毫秒获得日期
Date newDate = new Date(longTime);
// 日期格式转换为字符串
String returnDate = formatter.format(newDate);再补一个全的
// 延时1天
long dateL = System.currentTimeMillis() + 24 * 60 * 60 * 1000l;
curDatetime .setTime(dateL);
System.out.println("date=" + curDatetime);
System.out.println("date2=" + new Date());
import java.util.*;public class DateOperator {
public static void main(String[] args) {
Calendar cd = Calendar.getInstance();
cd.set(2010,5,24,14,33,22);
System.out.println(cd.getTime());
cd.add(Calendar.DAY_OF_MONTH,1);
System.out.println(cd.getTime());
}
}
calendar.add(GregorianCalendar.DATE, 1);
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String result = df.format(calendar.getTime());
System.out.println(result);
很显然这样比较科学。如果只要一个时间的话,可以 new Date(date.getTime()+24*60*60*1000);
add和roll两种方法
(1)add()方法
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
Calendar cal=Calendar.getInstance();
cal.set(Calendar.YEAR, 2006);
cal.set(Calendar.MONTH,);
cal.set(Calendar.DAY_OF_MONTH, 3);
cal.add(Calendar.DATE, -4);
Date date=cal.getTime();
System.out.println(df.format(date));
cal.add(Calendar.DATE, 4);
date=cal.getTime();
System.out.println(df.format(date));
输出:
2006-08-30
2006-09-03
(2)roll方法
cal.set(Calendar.YEAR, 2006);
cal.set(Calendar.MONTH,;
cal.set(Calendar.DAY_OF_MONTH, 3);
cal.roll(Calendar.DATE, -4);
date=cal.getTime();
System.out.println(df.format(date));
cal.roll(Calendar.DATE, 4);
date=cal.getTime();
System.out.println(df.format(date));
输出:
2006-09-29
2006-09-03
第一:可以用java.util.Calendar来实现
public static String getTime(){
Calendar c=new GregorianCalendar();
String time=c.get(Calendar.YEAR)+"-"+(c.get(Calendar.MONTH)+1)+"-"+c.get(Calendar.DATE)+" ";
int h=c.get(Calendar.HOUR_OF_DAY);
int m=c.get(Calendar.MINUTE);
int s=c.get(Calendar.SECOND);
String ph=h<10?"0":"";
String pm=m<10?"0":"";
String ps=s<10?"0":"";
time+=ph+h+":"+pm+m+":"+ps+s;
return time;
}第二种方法:用java.text.SimpleDateFormatl;类获得
SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String s = dateformat.format(new Date());