import java.util.*;
import java.text.*;public class World {
public static void main(String[] args) {
GregorianCalendar worldTour = new GregorianCalendar(1872, Calendar.OCTOBER, 2);
worldTour.add(GregorianCalendar.DATE, 80);
Date d = worldTour.getTime();
DateFormat df = DateFormat.getDateInstance();
String s = df.format(d);
System.out.println("80 day trip will end " + s);
}
}
import java.text.*;public class World {
public static void main(String[] args) {
GregorianCalendar worldTour = new GregorianCalendar(1872, Calendar.OCTOBER, 2);
worldTour.add(GregorianCalendar.DATE, 80);
Date d = worldTour.getTime();
DateFormat df = DateFormat.getDateInstance();
String s = df.format(d);
System.out.println("80 day trip will end " + s);
}
}
解决方案 »
- this.getServletContext(); request.getServletContext();的区别是什么?
- web项目打成war时报错。。。急!急!
- 为什么我用JAVABEAN写的JSP会引发空指针异常
- 问一个struts2 OGNL的问题
- 求教,java怎么取得CPU和内存的使用率?解决100分送上
- 提问,有没有人回答自己看着办..
- showModalDialog(url,...)中的url调用了form表单使用post请求,但在servlet中得到是get请求,为什么?
- 送分
- tomcat下新建一个Web Application的问题
- 关于java的环境
- 自定义类调用出错 大家帮忙看看
- 简单问题!!!!!!!!!!!!
GregorianCalendar worldTour = new GregorianCalendar(d);
报错啊。
我得出来的d是2005/01/01这种格式的啊,GregorianCalendar(1872, Calendar.OCTOBER, 2)这咋回事;
Calendar calendar = Calendar.getInstance();
calendar.setTime(d);
calendar.set(Calendar.DAY_OF_YEAR,(calendar.get(Calendar.DAY_OF_YEAR) + offset));
return calendar.getTime();
}
//import java.text.*;
//import java.util.*;public static String addDate(String day,int x)
{
SimpleDateFormat format=new SimpleDateFormat("yyyy/MM/dd");
Date date = null;
try
{
date = format.parse(day);
}
catch (ParseException ex)
{
ex.printStackTrace();
}
if (date==null) return "";
Calendar cal=Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.DAY_OF_MONTH,x);
date=cal.getTime();
System.out.println("3 days after(or before) is "+format.format(date));
cal=null;
return format.format(date);
}
我就想把日期dd+天数,变为2005-01-02.......返回2005-01-02给我。
Calendar的add函数:当天数到了最后一天再加一天,月份回自动增加1吗,要自己判断吗?
干嘛好是用getInstance啊,干嘛老是用当天啊,我想2005-10-01增加一天,变为2005-10-02,
我要怎么样赋2005-01-01给Calendar啊。。
addDate("2005/02/27",3)cal.setTime(date);就是将时间设为你传的值啊
如果是数据库里的:你把接口改下就行了, 当天数到了最后一天再加一天,月份回自动增加1吗,要自己判断吗?这个不用你担心就算年底后加一天成新的一年也不用你管的
你的method我试过了,怎么这乜慢啊,半天还没出结果啊。。
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;public class Yesterday {
public static Date getYesterday(){
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DAY_OF_YEAR,(calendar.get(Calendar.DAY_OF_YEAR)-1));
return calendar.getTime();
}
public static Date changeDay(Date date, int offset){
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.DAY_OF_YEAR,(calendar.get(Calendar.DAY_OF_YEAR) + offset));
return calendar.getTime();
} public static void main(String[] args){ String nyr = "2005-8-19";
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
try {
Date d = fmt.parse(nyr);
System.out.println(fmt.format(changeDay(d, +1)));
System.out.println(fmt.format(changeDay(d, +250)));
System.out.println(fmt.format(changeDay(d, -250)));
} catch (ParseException e) {
e.printStackTrace();
}
}
}
2005-08-20
2006-04-26
2004-12-12
当把String nyr = "2005-8-19";改为String nyr = "2005-8-31";后输出结果为:
2005-09-01
2006-05-08
2004-12-24
结果是正确的,请再试一下
tx_dt = sdf.parse("2005-10-31");
Calendar strDate = Calendar.getInstance();
strDate.setTime(tx_dt);
calendar.set(Calendar.DAY_OF_YEAR,(calendar.get(Calendar.DAY_OF_YEAR) + 1));
out.print(format.format(strDate.getTime()));结果:2005-10-01
取到当前日期的话,加减天数就正常。为什么tx_dt赋值就不行啊?
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
注意:
wallex(兰舟催发)写的是:
SimpleDateFormat format=new SimpleDateFormat("yyyy/MM/dd");日期时间格式是:
模板定义如下:
y 年号,如 1996
M 月份,如 July 或者 07
d 月中第几天,如 12
H 小时(24制),如 0、17
m 分钟,如 32
s 钞钟,如55
S 微钞,如978
E 星期几,如 Tuesday
D 一年中的第几天,如 189
w week in year (Number) 27
W week in month (Number) 2
a am/pm er (Text) PM
k hour in day (1~24) (Number) 24
K hour in am/pm (0~11) (Number) 0
z time zone (Text) Pacific Standard Time
' escape for text (Delimiter)
'' single quote (Literal) '