Pessoal,
Meu codigo faz um select no banco e o resultado eu crio um arquivo.txt para exportar ao usuario, o problema que na minha maquina local ele é exportado corretamente, mas quando subo a versão para o servidor quando o usuario exporta o relatorio ele aparece com erro de acentuação, ja fiz umas pesquisas e não encontrei uma solução, gostaria de uma ajuda… segue abaixo meu codigo…
[code]
public class GeraRelatorioXls {
public boolean consultar(ImpressaoBean bean3) throws Throwable {
ArrayList<ImpressaoBean> arrayCaracterizacao = new ArrayList<ImpressaoBean>();
ImpressaoBean bean = null;
String sql = "select * from EXPORT_TAB_CARACTERIZACAO";
try {
Statement st = ContextOracle.getInstance().createStatement();
ResultSet rs = st.executeQuery(sql);
while (rs.next()) {
bean = new ImpressaoBean();
bean.setNomeArea(rs.getString("Nome"));
bean.setCodVulnerabilidade(rs.getString("Vulnerabilidade"));
bean.setCodLocalizacao(rs.getString("Localizacao"));
bean.setNumUhsMapeadas(rs.getString("Uhs Mapeadas"));
bean.setCodTipologia(rs.getString("Tipologia"));
bean.setCodTipoAssentamento(rs.getString("Tipo Assentamento"));
bean.setDataOcupacaoDoc(rs.getString("Ocupacao documentada"));
bean.setDataOcupacaoEntrevista(rs.getString("Ocupacao entrevista"));
bean.setCodZoneamento(rs.getString("Zoneamento"));
bean.setCodGravamesJudiciais(rs.getString("Gravames Judiciais"));
bean.setCodPrograma(rs.getString("Intervencao - programa"));
bean.setCadUnidades(rs.getString("Unidades Cadastradas"));
bean.setCodEstagio(rs.getString("Intervencao - estagio"));
bean.setCodManancial(rs.getString("Manancial"));
bean.setCodFeicaoMorfologica(rs.getString("Feicao morfologica"));
arrayCaracterizacao.add(bean);
}
StringBuilder sb2 = new StringBuilder();
for (ImpressaoBean bean2 : arrayCaracterizacao) {
sb2.append(processaObjeto(bean2) + "\n");
}
try {
PrintWriter os = new PrintWriter(new FileWriter("/dados/programas/apache-tomcat-6.0.35/webapps/sihisb/arquivos/planilha.txt"));
///dados/programas/apache-tomcat-6.0.35/webapps/sihisb/arquivos
os.println("NOME;VULNERABILIDADE;LOCALIZAÇÃO;UHS MAPEADAS;TIPOLOGIA;TIPO ASSENTAMENTO;ANO OCUPAÇÃO DOCUMENTADO;ANO OCUPAÇÃO ENTREVISTA;ZONEAMENTO;GRAVAMES JUDICIAIS;INTERVENÇÃO - PROGRAMA;" +
"UNIDADES CADASTRADAS;INTERVERÇÃO - ESTAGIO;MANANCIAL;FEIÇÃO MORFOLOGICA;");
os.write(sb2.toString());
os.flush();
os.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
st.close();
rs.close();
} catch (SQLException sqlex) {
throw new ServletException(sqlex);
}
return false;
}
public String processaObjeto(ImpressaoBean bean) throws Throwable {
StringBuilder sb = new StringBuilder();
ImpressaoDAO dao = new ImpressaoDAO();
sb.append(bean.getNomeArea());
sb.append(";");
sb.append(bean.getCodVulnerabilidade());
sb.append(";");
sb.append(bean.getCodLocalizacao());
sb.append(";");
sb.append(bean.getNumUhsMapeadas());
sb.append(";");
sb.append(bean.getCodTipologia());
sb.append(";");
sb.append(bean.getCodTipoAssentamento());
sb.append(";");
sb.append(bean.getDataOcupacaoDoc());
sb.append(";");
sb.append(bean.getDataOcupacaoEntrevista());
sb.append(";");
sb.append(bean.getCodZoneamento());
sb.append(";");
sb.append(bean.getCodGravamesJudiciais());
sb.append(";");
sb.append(bean.getCodPrograma());
sb.append(";");
sb.append(bean.getCadUnidades());
sb.append(";");
sb.append(bean.getCodEstagio());
sb.append(";");
sb.append(bean.getCodManancial());
sb.append(";");
sb.append(bean.getCodFeicaoMorfologica());
sb.append(";");
return sb.toString();
}[/code]
experimente mudar dePrintWriter os = new PrintWriter(new FileWriter("/dados/programas/apache-tomcat-6.0.35/webapps/sihisb/arquivos/planilha.txt"));
para PrintWriter os = new PrintWriter(new File("/dados/programas/apache-tomcat-6.0.35/webapps/sihisb/arquivos/planilha.txt"), "UTF-8");
Obrigado sua dica deu certo…
Para ajudar amigos segue codigo abaixo:
package br.gov.sp.saobernardo.sehab.mail;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import javax.servlet.ServletException;
import br.gov.sp.saobernardo.sehab.bean.ImpressaoBean;
import br.gov.sp.saobernardo.sehab.dao.ImpressaoDAO;
import br.gov.sp.saobernardo.sehab.util.ContextOracle;
public class GeraRelatorioXls {
public boolean consultar(ImpressaoBean bean3) throws Throwable {
ArrayList<ImpressaoBean> arrayCaracterizacao = new ArrayList<ImpressaoBean>();
ImpressaoBean bean = null;
String sql = "select * from EXPORT_TAB_CARACTERIZACAO";
try {
Statement st = ContextOracle.getInstance().createStatement();
ResultSet rs = st.executeQuery(sql);
while (rs.next()) {
bean = new ImpressaoBean();
bean.setNomeArea(rs.getString("Nome"));
bean.setCodVulnerabilidade(rs.getString("Vulnerabilidade"));
bean.setCodLocalizacao(rs.getString("Localizacao"));
bean.setNumUhsMapeadas(rs.getString("Uhs Mapeadas"));
bean.setCodTipologia(rs.getString("Tipologia"));
bean.setCodTipoAssentamento(rs.getString("Tipo Assentamento"));
bean.setDataOcupacaoDoc(rs.getString("Ocupacao documentada"));
bean.setDataOcupacaoEntrevista(rs.getString("Ocupacao entrevista"));
bean.setCodZoneamento(rs.getString("Zoneamento"));
bean.setCodGravamesJudiciais(rs.getString("Gravames Judiciais"));
bean.setCodPrograma(rs.getString("Intervencao - programa"));
bean.setCadUnidades(rs.getString("Unidades Cadastradas"));
bean.setCodEstagio(rs.getString("Intervencao - estagio"));
bean.setCodManancial(rs.getString("Manancial"));
bean.setCodFeicaoMorfologica(rs.getString("Feicao morfologica"));
arrayCaracterizacao.add(bean);
}
StringBuilder sb2 = new StringBuilder();
for (ImpressaoBean bean2 : arrayCaracterizacao) {
sb2.append(processaObjeto(bean2) + "\n");
}
try {
PrintWriter os = new PrintWriter(new File("/dados/programas/apache-tomcat-6.0.35/webapps/sihisb/arquivos/planilha.csv"), "ISO-8859-1");
os.println("NOME;VULNERABILIDADE;LOCALIZAÇÃO;UHS MAPEADAS;TIPOLOGIA;TIPO ASSENTAMENTO;ANO OCUPAÇÃO DOCUMENTADO;ANO OCUPAÇÃO ENTREVISTA;ZONEAMENTO;GRAVAMES JUDICIAIS;INTERVENÇÃO - PROGRAMA;" +
"UNIDADES CADASTRADAS;INTERVERÇÃO - ESTAGIO;MANANCIAL;FEIÇÃO MORFOLOGICA;");
os.write(sb2.toString());
os.flush();
os.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
st.close();
rs.close();
} catch (SQLException sqlex) {
throw new ServletException(sqlex);
}
return false;
}
public String processaObjeto(ImpressaoBean bean) throws Throwable {
StringBuilder sb = new StringBuilder();
ImpressaoDAO dao = new ImpressaoDAO();
sb.append(bean.getNomeArea());
sb.append(";");
sb.append(bean.getCodVulnerabilidade());
sb.append(";");
sb.append(bean.getCodLocalizacao());
sb.append(";");
sb.append(bean.getNumUhsMapeadas());
sb.append(";");
sb.append(bean.getCodTipologia());
sb.append(";");
sb.append(bean.getCodTipoAssentamento());
sb.append(";");
sb.append(bean.getDataOcupacaoDoc());
sb.append(";");
sb.append(bean.getDataOcupacaoEntrevista());
sb.append(";");
sb.append(bean.getCodZoneamento());
sb.append(";");
sb.append(bean.getCodGravamesJudiciais());
sb.append(";");
sb.append(bean.getCodPrograma());
sb.append(";");
sb.append(bean.getCadUnidades());
sb.append(";");
sb.append(bean.getCodEstagio());
sb.append(";");
sb.append(bean.getCodManancial());
sb.append(";");
sb.append(bean.getCodFeicaoMorfologica());
sb.append(";");
return sb.toString();
}
public String tituloColunas(ImpressaoBean bean) throws Throwable {
StringBuilder sb2 = new StringBuilder();
sb2.append(bean.getNomeArea());
sb2.append("Nome;");
sb2.append(bean.getCodVulnerabilidade());
sb2.append("Vulnerabilidade;");
sb2.append(bean.getCodLocalizacao());
sb2.append("Localização;");
sb2.append(bean.getNumUhsMapeadas());
sb2.append("Uhs;");
sb2.append(bean.getCodTipologia());
sb2.append("Tipologia;");
sb2.append(bean.getCodTipoAssentamento());
sb2.append("Tipo Assentamento;");
sb2.append(bean.getDataOcupacaoDoc());
sb2.append("Ano Ocupação Documentado;");
sb2.append(bean.getDataOcupacaoEntrevista());
sb2.append("Ano Ocupação Entrevista;");
sb2.append(bean.getCodZoneamento());
sb2.append("Zoneamento;");
sb2.append(bean.getCodGravamesJudiciais());
sb2.append("Gravames Judiciais;");
sb2.append(bean.getCodPrograma());
sb2.append("Interveção - Programa;");
sb2.append(bean.getCadUnidades());
sb2.append("Unidades Cadastradas;");
sb2.append(bean.getCodEstagio());
sb2.append("Interverção - Estagio;");
sb2.append(bean.getCodManancial());
sb2.append("Manancial;");
sb2.append(bean.getCodFeicaoMorfologica());
sb2.append("Feição Morfologica;");
return sb2.toString();
}
}
Se quiser ajudar os amigos ainda mais, e não tenha mais dúvidas,
edite o seu primeiro post do tópico, e adicione a tag [RESOLVIDO] ao título, assim quem vê o tópico, sabe que a dúvida já foi sanada.
Abraço!
OK. Pessoal Resolvido! abraços.
Tem que ser no primeiro post, amigão 