建议不要使用类型 Date 的方法 getYear()?如何解决? 你可以不需要用到getYear()方法啊,你的本意不就是将加了minutes之后的日期对象以你固定的格式返回到函数吗,可以这样做呀:你的日期格式既然已经定义了(formatter),那么你可以直接返回formatter.format(dt)即可 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 其中formatter.format(dt)就是将日期对象按照formatter的日期格式转换成字符串,我试过了,一切ok:) msn:[email protected]有机会切磋,我也是初学 Calendar cal = Calendar.getInstance(); cal.setTime(new Date()); int year = cal.get(Calendar.YEAR); Calendar now=Calendar.getInstance(); //日历对象 Date time=new Date(); //得到当前日期 now.setTime(time); //设置进去 System.out.println(now.get(Calendar.YEAR)); //返回日历对象的年 嗯,给改成这样了,多谢各位: /*时间加分钟 * @author 杨瑞 * @param strDate 时间 * @param minutes 分钟数 * @return 相加后的时间 */ public static String DateAdd(String strDate,int minutes){ SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd HH:mm"); ParsePosition pos = new ParsePosition(0); Date dt=formatter.parse(strDate,pos); long ltmp=dt.getTime(); ltmp+=minutes*60*1000; //修改开始 byXX 2004-6-30 11:59:00 Calendar MyCalendar=Calendar.getInstance(); MyCalendar.setTimeInMillis(ltmp); //dt.setTime(ltmp); String year,month,date,hour,minute; year=String.valueOf(1900+MyCalendar.get(Calendar.YEAR)); month=String.valueOf(1+MyCalendar.get(Calendar.MONTH)); if(month.length()==1) month="0"+month; date=String.valueOf(MyCalendar.get(Calendar.DATE)); if(date.length()==1) date="0"+date; hour=String.valueOf(MyCalendar.get(Calendar.HOUR)); if(hour.length()==1) hour="0"+hour; minute=String.valueOf(MyCalendar.get(Calendar.MINUTE)); if(minute.length()==1) minute="0"+minute; //修改结束 byXX 2004-6-30 11:59:21 return year+"-"+month+"-"+date+" "+hour+":"+minute; } /*时间减分钟 * @author 杨瑞 * @param strDate 时间 * @param minutes 分钟数 * @return 相减后的时间 */ public static String DateDiff(String strDate,int minutes){ SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd HH:mm"); ParsePosition pos = new ParsePosition(0); Date dt=formatter.parse(strDate,pos); long ltmp=dt.getTime(); ltmp-=minutes*60*1000; //修改开始 byXX 2004-6-30 11:59:27 Calendar MyCalendar=Calendar.getInstance(); MyCalendar.setTimeInMillis(ltmp); //dt.setTime(ltmp); String year,month,date,hour,minute; year=String.valueOf(1900+MyCalendar.get(Calendar.YEAR)); month=String.valueOf(1+MyCalendar.get(Calendar.MONTH)); if(month.length()==1) month="0"+month; date=String.valueOf(MyCalendar.get(Calendar.DATE)); if(date.length()==1) date="0"+date; hour=String.valueOf(MyCalendar.get(Calendar.HOUR)); if(hour.length()==1) hour="0"+hour; minute=String.valueOf(MyCalendar.get(Calendar.MINUTE)); if(minute.length()==1) minute="0"+minute; //修改结束 byXX 2004-6-30 11:59:32 return year+"-"+month+"-"+date+" "+hour+":"+minute; } 新手请教一下JAVA 服务器端编程如何实现 即时消息提醒? 向hashSet中添加相同对象问题 关于web.xml取值的相关问题 为什么布局管理器没有工作 一个简单的JAVA问题 System.exit()的问题 在Applet使用JSObject调用jacascript出现stack overflow java test 80端口可以侦听吗 MapInfo 下的Java编程? 看过来,判断InetAddress的hashCode()有什么意义! 一个关于生成Date对象的问题(在线等)
cal.setTime(new Date());
int year = cal.get(Calendar.YEAR);
Date time=new Date(); //得到当前日期
now.setTime(time); //设置进去
System.out.println(now.get(Calendar.YEAR)); //返回日历对象的年
/*时间加分钟
* @author 杨瑞
* @param strDate 时间
* @param minutes 分钟数
* @return 相加后的时间
*/
public static String DateAdd(String strDate,int minutes){
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd HH:mm");
ParsePosition pos = new ParsePosition(0);
Date dt=formatter.parse(strDate,pos);
long ltmp=dt.getTime();
ltmp+=minutes*60*1000;
//修改开始 byXX 2004-6-30 11:59:00
Calendar MyCalendar=Calendar.getInstance();
MyCalendar.setTimeInMillis(ltmp);
//dt.setTime(ltmp);
String year,month,date,hour,minute;
year=String.valueOf(1900+MyCalendar.get(Calendar.YEAR));
month=String.valueOf(1+MyCalendar.get(Calendar.MONTH));
if(month.length()==1)
month="0"+month;
date=String.valueOf(MyCalendar.get(Calendar.DATE));
if(date.length()==1)
date="0"+date;
hour=String.valueOf(MyCalendar.get(Calendar.HOUR));
if(hour.length()==1)
hour="0"+hour;
minute=String.valueOf(MyCalendar.get(Calendar.MINUTE));
if(minute.length()==1)
minute="0"+minute;
//修改结束 byXX 2004-6-30 11:59:21
return year+"-"+month+"-"+date+" "+hour+":"+minute;
}
/*时间减分钟
* @author 杨瑞
* @param strDate 时间
* @param minutes 分钟数
* @return 相减后的时间
*/
public static String DateDiff(String strDate,int minutes){
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd HH:mm");
ParsePosition pos = new ParsePosition(0);
Date dt=formatter.parse(strDate,pos);
long ltmp=dt.getTime();
ltmp-=minutes*60*1000;
//修改开始 byXX 2004-6-30 11:59:27
Calendar MyCalendar=Calendar.getInstance();
MyCalendar.setTimeInMillis(ltmp);
//dt.setTime(ltmp);
String year,month,date,hour,minute;
year=String.valueOf(1900+MyCalendar.get(Calendar.YEAR));
month=String.valueOf(1+MyCalendar.get(Calendar.MONTH));
if(month.length()==1)
month="0"+month;
date=String.valueOf(MyCalendar.get(Calendar.DATE));
if(date.length()==1)
date="0"+date;
hour=String.valueOf(MyCalendar.get(Calendar.HOUR));
if(hour.length()==1)
hour="0"+hour;
minute=String.valueOf(MyCalendar.get(Calendar.MINUTE));
if(minute.length()==1)
minute="0"+minute;
//修改结束 byXX 2004-6-30 11:59:32
return year+"-"+month+"-"+date+" "+hour+":"+minute;
}