RE:error al exportar datos a excel desde java
os copio el codigo fuente de la clase exportar por si os sirviera de algo y me pudierais echar un cable por favor::
private void exporta( Vector emplazadas,
Vector noEmplazadas,
String fecha,
String codEmisora,
String descEmisora,
String formato ,
boolean cadena )
{
Confirm elige=
new Confirm("Elija programa",this,false);
// Vaciamos el combo
cbProg.removeAll();
// Cargamos el combo
// cbProg.addItem("*** Seleccione Programa ***");
String progra="";
Vector todo=reagrupar(emplazadas, "todos");
Vector todoNoEmplazadas=reagrupar(noEmplazadas,"todos");
Vector grupo=new Vector();
Vector cabec=new Vector();
for(int pr=0;pr<todo.size();pr++)
{
grupo=(Vector)todo.elementAt(pr);
cabec=(Vector)grupo.elementAt(0);
if(!progra.equals((String)cabec.elementAt(0)))
{
progra=(String)cabec.elementAt(0);
cbProg.addItem(progra);
}
}
for(int pr=0;pr<todoNoEmplazadas.size();pr++)
{
grupo=(Vector)todoNoEmplazadas.elementAt(pr);
cabec=(Vector)grupo.elementAt(0);
if(!progra.equals((String)cabec.elementAt(0)))
{
progra=(String)cabec.elementAt(0);
cbProg.addItem(progra);
}
}
elige.setBounds(100,100,650,220);
chTodos.setBounds(200,50,200,20);
chTodos.addItemListener(new java.awt.event.ItemListener()
{
public void itemStateChanged(ItemEvent e)
{
chTodos_itemStateChanged(e);
}
});
cbProg.setBounds(200,80,400,20);
elige.recolocaBotones(225,130,355,130);
Font fuente=new Font("TimesRoman", 1, 14);
chTodos.setFont(fuente);
cbProg.setFont(fuente);
chTodos.setState(true);
chTodos.setLabel("Todos los programas");
cbProg.setEnabled(false);
elige.add(cbProg);
elige.add(chTodos);
elige.show();
if(!elige.estaConfirmado()) return;
String programa="";
if(chTodos.getState())
{
programa="todos";
}
else
{
programa=cbProg.getSelectedItem();
/* if (cbProg.getSelectedIndex()==0)
{
_msgboxStop.setTexto("Seleccione un programa o active la casilla todos los programas.");
_msgboxStop.setVisible(true);
return;
}
*/
}
// System.out.println("programa elegido:" + cbProg.getSelectedItem());
/* System.out.println("");
for (int emp=0;emp<emplazadas.size();emp++)
System.out.println(emplazadas.elementAt(emp));
// System.out.println("noEmplazadas");
System.out.println("");
*/
/* for (int emp=0;emp<emplazadas.size();emp++)
{
System.out.println("");
Vector vec=(Vector)emplazadas.elementAt(emp);
for (int emp2=1;emp2<vec.size();emp2++)
{
System.out.println(emp2 + " :" + vec.elementAt(emp2));
}
}
*/
//System.out.println("noEmplazadas" + noEmplazadas);
StringBuffer encabezado=new StringBuffer();
StringBuffer cuerpo=new StringBuffer();
encabezado.append("<html><head><title></title></head><body>");
encabezado.append("<table border=0><tr><td>");
encabezado.append("Emisora");
encabezado.append("</td>");
encabezado.append("<td>");
encabezado.append(descEmisora);
encabezado.append("</td></tr>");
encabezado.append("<tr><td>");
// encabezado.append(" ");
encabezado.append("Fecha:");
encabezado.append("</td>");
encabezado.append("<td align=left> ");
encabezado.append(fecha);
encabezado.append("</td></tr></table>");
encabezado.append("</body></html>");
// encabezado.append(" ");
encabezado.append("<br><br>");
//System.out.println("Encabezado: "+encabezado);
cuerpo.append(new String(encabezado));
//System.out.println("Cuerpo: "+cuerpo);
cuerpo.append("<table border=1><tr><th colspan=3>");
cuerpo.append("<h3><b>PARTE DE INCIDENCIAS</b></h3>");
cuerpo.append("</th></tr>");
// cuerpo.append(" ");
cuerpo.append("<tr>");
cuerpo.append("<td>");
cuerpo.append("HORA");
cuerpo.append("</td>");
cuerpo.append("<td>");
cuerpo.append("REALIZADOR");
cuerpo.append("</td>");
cuerpo.append("<td>");
cuerpo.append("OBSERVACIONES");
cuerpo.append("</td></tr>");
cuerpo.append("<tr><td colspan=3>");
cuerpo.append("<table>");
// for (int inc=0;inc<5;inc++)
// {
cuerpo.append("<tr ><td > </td><td > </td><td > </td></tr>");
// }
cuerpo.append("</table></table>");
cuerpo.append("<br>");
//PAUTA DE PUBLICIDAD
cuerpo.append("<table border=1><tr><th colspan=6>");
cuerpo.append("<h3><b>PAUTA DE PUBLICIDAD</b></h3>");
cuerpo.append("</td></tr>");
//Guardo cada cabecera y sus cuñas en un vector 'vgrupo'
//que se lo añado al vector 'todo'
// Añado los títulos
cuerpo.append("<tr><th>");
cuerpo.append("Tipo");
cuerpo.append("</th><th>");
cuerpo.append("Titulo de las grabaciones");
cuerpo.append("</th><th>");
cuerpo.append("Duración");
cuerpo.append("</th><th>");
cuerpo.append(" </th><th>");
cuerpo.append("H. RI.");
cuerpo.append("</th><th>");
cuerpo.append("Observaciones");
cuerpo.append("</th></tr>");
//Comienzo la carga de la cadena
todo=reagrupar(emplazadas, programa);
;
Vector gr=new Vector();
Vector cun=new Vector();
int emp;
for(emp=0;emp<todo.size();emp++)
{
gr=(Vector)todo.elementAt(emp);
cun=(Vector)gr.elementAt(0);
cuerpo.append("<tr><td>");
cuerpo.append(" </td><td>");
cuerpo.append(cun.elementAt(0));
cuerpo.append("</td><td>");
cuerpo.append(" </td><td>");
cuerpo.append("Desconexion a las " + cun.elementAt(1));
cuerpo.append("</td><td>");
cuerpo.append(cun.elementAt(3)+ "s");
cuerpo.append("</td><td>");
int tiempoTotal=Integer.parseInt((String)cun.elementAt(3));
int resto=Integer.parseInt((String)cun.elementAt(2));
// int tiempoTotal=
// int ocup=Integer.valueOf(tiempoTotal)-Integer.valueOf(resto);
int ocup=tiempoTotal - resto;
cuerpo.append("ocupacion: " + ocup);
cuerpo.append("</td></tr>");
for (int cont=1;cont<gr.size();cont++)
{
cun=new Vector();
cun=(Vector)gr.elementAt(cont);
cuerpo.append("<tr><td>");
cuerpo.append((String)cun.elementAt(5) + (String)cun.elementAt(6));
cuerpo.append("</td><td>");
cuerpo.append((String)cun.elementAt(4)); //descripcion cuna
cuerpo.append("</td><td>");
cuerpo.append((String)cun.elementAt(3)); //duracion cuna
cuerpo.append("</td><td>");
cuerpo.append(" </td><td>");
cuerpo.append(" </td><td>");
cuerpo.append((String)cun.elementAt(9)); // hora inicio
cuerpo.append("/");
cuerpo.append((String)cun.elementAt(10));//hora fin
if(((String)cun.elementAt(11)).equals("S"))
cuerpo.append(". primera de bloque");
if(((String)cun.elementAt(12)).equals("S"))
cuerpo.append(". ultima de bloque");
//(cuña recordatorio )
//System.out.println(24+ "empl:xx" +(String)cun.elementAt(24) + "xx");
if(!((String)cun.elementAt(24)).equals(""))
cuerpo.append(" R");
cuerpo.append("</td></tr>");
}
}
cuerpo.append("</table>");
cuerpo.append("<br>");
cuerpo.append("<table border=1><tr><th colspan=4>");
cuerpo.append("<h3><b>CUÑAS NO EMPLAZADAS</b></h3>");
cuerpo.append("</th></tr>");
todo=reagrupar(noEmplazadas, programa);
//System.out.println("TODO: " + todo);
cuerpo.append("<tr><th>");
cuerpo.append("Tipo");
cuerpo.append("</th><th>");
cuerpo.append("Titulo de las grabaciones");
cuerpo.append("</th><th>");
cuerpo.append("Duración");
cuerpo.append("</th><th>");
cuerpo.append("Observaciones");
cuerpo.append("</th></tr>");