Somar data

3 respostas
R

Pessoal preciso de ajuda,
Estou montando uma tabela na qual tenho o inicio das ferias (INICIOFER) que somo a quantidade de dias de ferias que a pessoa vai tirar (QTDDIAS) e no campo retorno é que está o problema.como somo as duas variaveis .uma Date e outra Int?

<%@ page import="java.sql.*" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.text.DateFormat"%>
<%@ page import="java.util.*"%> 
<html>
<%
Connection con = null;
Statement st = null;
ResultSet res = null;
int qtddias;
String nome;
Date iniciofer;
String formato = "dd/MM/yyyy";
SimpleDateFormat formatter = new SimpleDateFormat(formato);
String retorno;
Date nova_data = new Date(iniciofer.getTime()+((1000*24*60*60)*qtddias));
%>
<body bgcolor="#ffffff">
		Consulta f&eacute;rias por nome.

<table id="tb1"nosave="" border="2"cellspacing="2" cols="7">
	<tbody>
	  <tr bgcolor="#e6e6e6">
	    	<td><font face="Arial, Helvetica, sans-serif" size="2"><b>Nome </b></font></td>
        	<td align="center"><font face="Arial, Helvetica, sans-serif" size="2"><b>Apartir de: </b></font></td>
		<td align="center"><font face="Arial, Helvetica, sans-serif" size="2"><b>Qtde de dias</b></font></td>
		<td align="center"><font face="Arial, Helvetica, sans-serif" size="2"><b>Retorno</b></font></td>
	</tr>
<%
try
{    Class.forName("org.gjt.mm.mysql.Driver");
     con = DriverManager.getConnection
     ("jdbc:mysql://localhost/ferias","rusther","rust");
     st = con.createStatement();
     String query = "select NOME,INICIOFER,QTDDIAS from FERIAS";
     res = st.executeQuery (query);
     while ( res.next() )
     {   
          nome=res.getString("NOME");
          iniciofer=formatter.format(res.getDate("INICIOFER"));
	  qtddias=res.getInt("QTDDIAS");
	  retorno=(iniciofer + qtddias);
%>

	<tr>
      <td nowrap="nowrap"><"NOME=<%=nome%>&INICIOFER=<%=iniciofer%>&QTDDIAS=<%=qtddias%>";>
       <td nowrap="nowrap"><font face="Arial, Helvetica, sans-serif" size="2"><%=nome%></font></td>
	<td align="center"nowrap="nowrap"><font face="Arial, Helvetica, sans-serif" size="2"><%=iniciofer%></font></td>
	<td align="center"nowrap="nowrap"><font face="Arial, Helvetica, sans-serif" size="2"><%=qtddias%></font></td>
	<td align="center"nowrap="nowrap"><font face="Arial, Helvetica, sans-serif" size="2"><%=retorno%></font></td>
         </tr>
<%
     }
     con.close();

}

catch (ClassNotFoundException cnfex)

 {
   out.println("Não carregou o Driver!");
 }
catch (SQLException sqlex)
{    out.println("Não conectou ao banco!");

}

%>
</tbody>
</table>
</body>
</html>

3 Respostas

bandrade

Usa Calendar que é mais fácil:

http://java.sun.com/j2se/1.4.2/docs/api/java/util/Calendar.html

celsofurtado

E aí!!!

Faça o seguinte:

Date dt;
int dias;

Calendar cal = Calendar.getInstance();

cal.setTime(dt);
cal.add(Calendar.DATE, dias);
dt = cal.getTime();

Espero que ajude…

Té mais…

R

celsomarcos ,tentei fazer dessa forma mas o apache diz que tenho que mudar a variavel de Date para string,mas não consigo. como dou um parse nela?digo declarar como string e converte-la para Date. :shock:

Obrigado!

Saúde e Paz

Criado 15 de janeiro de 2008
Ultima resposta 22 de jan. de 2008
Respostas 3
Participantes 3