我现在有一个时间2010-12-12 01:02:02
我想让小时数加8,然后显示时间为2010-12-12 09:02:02
我该如何去写代码实现,我写的如下,当小时数为个位数时,调试有错误:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
java.util.Date date1 = format.parse("2010-12-12 01:02:02");
String SignTime = date1.toLocaleString().substring(0,11);
System.out.println(SignTime);
String SignTime1 = date1.toLocaleString().substring(11,13);
int aa=Integer.parseInt(SignTime1)-1+8;
System.out.println(SignTime1);
if(aa==24){
aa=00;
}
if(aa>24){
aa=aa % 24;
}
System.out.println(aa);
String SignTime2 = date1.toLocaleString().substring(13,19);
System.out.println(SignTime2);
System.out.println(SignTime+aa+SignTime2);
希望高手能给以指点或者给以新的方法,谢谢
我想让小时数加8,然后显示时间为2010-12-12 09:02:02
我该如何去写代码实现,我写的如下,当小时数为个位数时,调试有错误:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
java.util.Date date1 = format.parse("2010-12-12 01:02:02");
String SignTime = date1.toLocaleString().substring(0,11);
System.out.println(SignTime);
String SignTime1 = date1.toLocaleString().substring(11,13);
int aa=Integer.parseInt(SignTime1)-1+8;
System.out.println(SignTime1);
if(aa==24){
aa=00;
}
if(aa>24){
aa=aa % 24;
}
System.out.println(aa);
String SignTime2 = date1.toLocaleString().substring(13,19);
System.out.println(SignTime2);
System.out.println(SignTime+aa+SignTime2);
希望高手能给以指点或者给以新的方法,谢谢
解决方案 »
- 有一个题,有些不解,求各位帮忙理解一下
- 求Struts2.3.4校验框架实现ajax客户端输入合法性校验的教程
- 现在oracle developer2000过时了嘛?
- JAVA使用POI读取EXCEL错误
- 求 怎样用POI把execl数据批量导入到dbf数据库!!!!!!!!!!!!!!
- Hibernate中increment?
- 大型项目,你中意哪款WEB_Services?
- 跪求WebLogic8.1 和MyEclipse5.5的配置
- 小数取整
- 如何在网页上打开传真格式文件(*.TIF)
- spring 为manager注入dao时 空指针错
- servlet 连接数据库分页查询语句 在oracle中
Sun Dec 12 01:02:02 CST 2010
01
8
:02:02
Sun Dec 8:02:02
源码:
import java.text.ParseException;
import java.text.SimpleDateFormat;public class gh { public static void main(String[] args) throws ParseException{
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
java.util.Date date1 = format.parse("2010-12-12 01:02:02");
String SignTime = date1.toString();
System.out.println(SignTime);
String SignTime1 = SignTime.substring(0, 8);
String SignTime2 = SignTime.substring(11,13);
int aa=Integer.parseInt(SignTime2)-1+8;
System.out.println(SignTime2);
if(aa==24){
aa=00;
}
if(aa>24){
aa=aa % 24;
}
System.out.println(aa);
String SignTime3= SignTime.substring(13,19);
System.out.println(SignTime3);
System.out.println(SignTime1+aa+SignTime3);
}
}
Sun Dec 12 01:02:02 CST 2010
01
9
:02:02
Sun Dec 12 9:02:02
import java.text.ParseException;
import java.text.SimpleDateFormat;public class gh { public static void main(String[] args) throws ParseException{
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
java.util.Date date1 = format.parse("2010-12-12 01:02:02");
String SignTime = date1.toString();
System.out.println(SignTime);
String SignTime1 = SignTime.substring(0, 11);
String SignTime2 = SignTime.substring(11,13);
int aa=Integer.parseInt(SignTime2)+8;
System.out.println(SignTime2);
if(aa==24){
aa=00;
}
if(aa>24){
aa=aa % 24;
}
System.out.println(aa);
String SignTime3= SignTime.substring(13,19);
System.out.println(SignTime3);
System.out.println(SignTime1+aa+SignTime3);
}
}
date1.toLocaleString().substring(11,12);
java.util.Date date = format.parse("2010-12-18 23:02:02");
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.HOUR_OF_DAY,8);
System.out.println(format.format(cal.getTime()));
System.out.println(endStr);日期自动将边界过滤好了!!
public static void main(String[] args) throws ParseException {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
java.util.Date date1 = format.parse("2010-12-31 23:22:02");
System.out.println(format.format(date1));
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println(format1.format(date1.getTime() + 8*60*60*1000));
}测试结果:
2010-12-31 11:22:02
2011-01-01 07:22:02
Date d=new Date();
String date = format.parse(d);
format = new SimpleDateFormat("hh");
Integer time=Integer.parseInt(format.parse(d));
format = new SimpleDateFormat("mm:ss");
String miao=format.parse(d);
String times=date+time+":"+miao;
楼主是 时区问题吧
最懒惰的方法public static void main(String[] a) throws Exception{
SimpleDateFormat sim = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sim.setTimeZone(TimeZone.getTimeZone("GMT"));
Date date = sim.parse("2010-12-12 09:02:02");
System.out.println(sim.format(date));
sim.setTimeZone(TimeZone.getTimeZone("GMT+8"));
System.out.println(sim.format(date));
}通过时区来处理
java.util.Date date1 = format.parse("2010-12-12 01:02:02");
Calendar cal = Calendar.getInstance();
cal.setTime(date1)l
cal.add(Calendar.HOUR_OF_DAY, 8);
String add8_hour = format.format(cal.getTime());