java里,取当前(2009-05)时间之前的6个月的那个时间(2008-11)?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java里,取当前(2009-05)时间之前的6个月的那个时间(2008-11)?相关的知识,希望对你有一定的参考价值。
java里,我的到当前时间cdate(eg:2009-05),要怎么才能转换或者得到前六个月的时间啊?(eg:2008-11)
import java.util.*; class aa public static void main(String[] args) int y ,m,d,h,mi,s; GregorianCalendar test02 = new GregorianCalendar(); test02.add(Calendar.MONTH,-6); y=test02.get(Calendar.YEAR); m=test02.get(Calendar.MONTH); d=test02.get(Calendar.DATE); h=test02.get(Calendar.HOUR_OF_DAY); mi=test02.get(Calendar.MINUTE); s=test02.get(Calendar.SECOND); System.out.println("前6个月的时刻是"+y+"年"+m+"月"+d+"日"+h+"时"+mi+"分"+s+"秒"); 这样写就行了,用那个add()方法,后面填入正数或负数代表是前几个月还是后几个月。 如果还有什么问题的话,给我说下! 参考技术A 用Calendar的add方法。用法见下面的例子。 Calendar c = Calendar.getInstance(); c.add(Calendar.MONTH, -6); System.out.println(c.get(Calendar.YEAR) + "-" + c.get(Calendar.MONTH));本回答被提问者采纳java 取系统时间相差13个小时,之前出现过8小时的情况,copy注册表解决了,但这次怎么搞都不行
不想在后台做什么处理,直接new Date()就能得到正确时间,就像之前没出问题一样。崩溃了,跪求高手帮忙
Properties pro=System.getProperties(); pro.list(System.out);输出user.timezone=America/Rio_Branco,为,怎样才能一次改成Asia/Shanghai呢
System.out.println(df.format(new Date()));// new Date()为获取当前系统时间
你用的就是这种方法么?追问
直接new Date()额
追答这样设置时区,试过没有?
设置为东八区。
TimeZone time = TimeZone.getTimeZone("GMT+8"); //设置为东八区
time = TimeZone.getDefault();// 这个是国际化所用的
TimeZone.setDefault(time);// 设置时区
Calendar calendar = Calendar.getInstance();// 获取实例
DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");//构造格式化模板
Date date = calendar.getTime(); //获取Date对象
String str = new String();
str = format1.format(date);//对象进行格式化,获取字符串格式的输出
System.out.println(str);
结果一样,还是差了12.5个小时
追答你的好奇怪哦。莫非是计算机操作系统的设置问题?
截图给我们看看你的结果。
现在问题还没用解决吗?那你输出时间是下午2:32,这个不正确么?那你系统的时间是什么呢?
追问15:32额
追答你的是差1个小时。那个输出应该是12小时制的。
还没解决么?
Calendar c = Calendar.getInstance();
c.setTimeZone(时区);追问
我就是不想每次都这样,有没有一次性根本的解决办法哈
参考技术C 跟本机时间还是服务器时间?追问当前时间,本地时间
以上是关于java里,取当前(2009-05)时间之前的6个月的那个时间(2008-11)?的主要内容,如果未能解决你的问题,请参考以下文章