java 怎么在现有时间上加3个小时

例如:首先我从数据库取出Timestamp类型时间的储存在字符串String date = "2012-07-25 21:00:00.0" 里,我怎么这个这个时间上加3个小时变成"2012-07-26 00:00:00.0"
数据库DB2

多了解了解数据库的那些函数就行了。这样实现很简单
如果是MySQL的话:可以直接使用函数来实现:
select date_add('2012-07-25 10:55:56',interval 3 Hour)
如果使用的是SQLServer的话,可以使用:
select dateadd(hour,3,'2012-07-25 10:55:56')

方法:
public String thisUnTime(String time,int min)
{
String result=null;
if(time==null||min==0)
{
return result;
}
Connection conn=DBConnection.getConn();
Statement stmt=null;
ResultSet rs=null;
String sql="select date_add('"+time+"',interval "+min+" Hour_minute)";//mysql
//String sql="select dateadd(hour,min,'"+time+"')";//sqlserver

try
{
stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
while(rs.next())
{
result=rs.getString(1);
}
}
catch(SQLException ex)
{
ex.printStackTrace();
}
finally
{
DBConnection.closeResultSet(rs);
DBConnection.closeStatement(stmt);
DBConnection.closeConnection(conn);
}
return result;
}追问

我用的是DB2哦

追答

那么应该:VALUES current time + 3 HOURS 就能取得了。我没用过DB2,也是看到别人怎么用日期、时间函数的。你可以自己摸索一下,不管是什么数据库,都可以以此类推。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-06-23
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date=null;
try {
date = sdf.parse("2012-07-25 21:00:00");
} catch (ParseException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
Calendar ca=Calendar.getInstance();
ca.setTime(date);
ca.add(Calendar.HOUR_OF_DAY, 3);
System.out.println(sdf.format(ca.getTime()));本回答被提问者采纳
第2个回答  2012-07-25
采用Java的话,可以通过Calander处理:
String date = "2012-07-25 21:00:00.0";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar cal = Calendar.getInstance();
cal.setTime(sdf.parse(date));
//+3小时
cal.add(Calendar.HOUR_OF_DAY, 3);
System.out.println(sdf.format(cal.getTime()));
第3个回答  推荐于2018-02-26
Date date = new Date();
System.out.println("data1 = "+date.toLocaleString());
date.setHours(new Date().getHours()+3);
System.out.println("date2 = "+date.toLocaleString());
运行结果:
data1 = 2012-7-25 10:58:35
date2 = 2012-7-25 13:58:35本回答被网友采纳

java如何进行时间加
在Java中进行时间加减操作,有多种方法可供选择。首先,你可以使用`java.util.Calendar`类,创建一个实例并设置当前日期,然后通过`add(int field, int amount)`方法,分别对年、月、季度、周和天进行加减操作。例如,要让日期加1,可以这样编写:Calendar calendar = Calendar.getInstance();calendar.se...

java 获取本机当前时间并对小时任意加减
Stringstr="20110823";Datedt=sdf.parse(str);CalendarrightNow=Calendar.getInstance();rightNow.setTime(dt);rightNow.add(Calendar.YEAR,-1);\/\/日期减1年 rightNow.add(Calendar.MONTH,3);\/\/日期加3个月 rightNow.add(Calendar.DAY_OF_YEAR,10);\/\/日期加10天 Datedt1=rightNow.getTime();...

java时间加减
Date date = new Date("2014\/1\/10 18:20"); Date date2 = new Date("2014\/1\/11 3:5"); long temp = date2.getTime() - date.getTime(); \/\/相差毫秒数 long hours = temp \/ 1000 \/ 3600; \/\/相差小时数 long temp2 = temp % (1000 * 3600); long mi...

java怎样得到30分钟后的时间?该如何处理?
1、获取当前时间,获取到的时间类型是long类型的,单位是毫秒 long currentTime = System.currentTimeMillis() ;2、在这个基础上加上30分钟:currentTime +=30*60*1000;3、格式化时间,获取到的就是当前时间半个小时之后的时间 Date date=new Date(currentTime);4、建立时间格式化对象:SimpleDateForma...

java获取当前时间加半小时之后的时间
1、获取当前时间,获取到的时间类型是long类型的,单位是毫秒 2、在这个基础上加上30分钟:currentTime +=30*60*1000;3、格式化时间,获取到的就是当前时间半个小时之后的时间Date date=new Date(currentTime);4、建立时间格式化对象:SimpleDateFormat dateFormat = new SimpleDateFormat(yyyy-MM-dd ...

java中如何实现在当前时间上加上4.5个小时返回一个Date类型
你好,可以使用Calendar类。方法如下:Date date = new Date();Calendar c = Calendar.getInstance();c.setTime(date);c.add(Calendar.MINUTE, 270);return c.getTime();

java 如何给得到的时间加 8小时
不知道你的时间是怎么得到的,如果是当前时间的hua int hour=calendar.get(Calendar.HOUR_OF_DAY)hour=hour+8;if(hour>=24)hour=hour-24;int day=calendar.get(Calendar.DAY_OF_MONTH)+1;不知道你是不是这个意思。

java 当前系统时间 加一天怎么取得?
java在当前系统时间加一天主要是使用calendar类的add方法,如下代码:import java.util.Calendar;import java.util.Date;public class ceshi {public static void main(String[] args) {Date date = new Date();\/\/ 新建此时的的系统时间System.out.println(getNextDay(date));\/\/ 返回明天的时间}...

java语言打印当前时间之后3分钟的时间点
public static void main(String[] args) {Calendar c = Calendar.getInstance();\/\/实例化System.out.println(c.getTime());\/\/输出为当前时间c.add(Calendar.MINUTE, 3);\/\/分钟+3System.out.println(c.getTime());\/\/输出为+3分钟时间}用Calendar类来解决各种时间问题,很强大。

java中根据当前时间+小时数计算最后的时间,遇周末顺延,谢谢
public static String getNewTimeByMinute(int hour){\/\/延迟小时数 SimpleDateFormat format = new SimpleDateFormat(yyyyMMddHHmmss);Calendar c = Calendar.getInstance();c.add( Calendar.HOUR_OF_DAY, hour );String newtime = format.format(c.getTime());return newtime;}追问问题是加上延迟了...

相似回答