Boa noite pessoal,
Estou precisando gerar um arquivo XML com base no meu BD.
Pra isso to usando um servlet e a bibioteca XStream.
A string criada pelo XStream esta ok, mas quando salvo em arquivo fica um sujeira no inicio do arquivo.
Oque eu to fazendo de errado?
Ai vai o codigo
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost/teste","root","1234");
Statement st = (Statement) con.createStatement();
ResultSet rs = st.executeQuery("Select * From Clientes");
while (rs.next()){
XStream xstream = new XStream();
xstream.alias("clientes", ClientesBean.class);
ClientesBean clientes = new ClientesBean(rs.getInt("Codigo"),rs.getString("Nome"),rs.getString("Telefone"));
xml = xstream.toXML(clientes);
FileOutputStream arquivoGrav = new FileOutputStream("C:\clientes.xml");
ObjectOutputStream objGravar = new ObjectOutputStream(arquivoGrav);
objGravar.reset();
objGravar.writeObject(xml);
objGravar.flush();
objGravar.close();
arquivoGrav.flush();
arquivoGrav.close();
}
} catch (ClassNotFoundException e){
System.out.println(e);
} catch (SQLException ex) {
Logger.getLogger(Banco.class.getName()).log(Level.SEVERE, null, ex);
} catch (Exception e){
System.out.println(e);
} finally {
out.close();
}
}
Arquivo gerado
¼Ý ♣yt h<clientes>
<codigo>4</codigo>
<nome>Joao da Silva</nome>
<telefone>99990003</telefone>
</clientes>
