Problemas com acentuação do arquivo.txt

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 :slight_smile: