Galera …
Tenho um XML gerado que nas duas primeiras linhas do arquivo tem:
Linha:<?xml version=“1.0” encoding=“UTF-8” ?>, que é gerada automatico
2.Linha:<?xml version=“1.0” encoding=“ISO-8859-1” ?>, a qual eu coloquei com a linha de código em java
ProcessingInstruction prcProcesso = docXMLAtendimento.createProcessingInstruction(“xml”, “version=‘1.0’ encoding=‘ISO-8859-1’”);
docXMLAtendimento.appendChild(prcProcesso);
Ou seja, as duas primeiras linhas do meu arquivo XML tem:
<?xml version=“1.0” encoding=“UTF-8” ?>
<?xml version=“1.0” encoding=“ISO-8859-1” ?>
Agora, Como que eu faço para excluir a primeira linha, ou seja, a linha que tem <?xml version=“1.0” encoding=“UTF-8” ?> ???
Welington … e galera …
Estou fazendo da seguinte maneira, conforme eu aprendi, passado pelo Gustavo Guilherme BacK.
//gera o Documento docXMLAtendimento
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
docXMLAtendimento = builder.newDocument();
// Adiciona a linha com o enconding iso-5589-1
ProcessingInstruction prcProcesso = docXMLAtendimento.createProcessingInstruction(“xml”, “version=‘1.0’ encoding=‘ISO-8859-1’”);
docXMLAtendimento.appendChild(prcProcesso);
Dessa maneira, a primeira linha é gerada sozinha, e a segunda eu que coloco.
Concordo com você, prefiro gerar corretamente de primeira, mas não sei como faz isso … Eu consegui adicionando a segunda linha …
Galera …
Acho que a melhor solução é criando o XML direto com o encondig ISO-8859-1", da seguinte maneira:
// Coloque conforme o nome de suas variáveis
Transformer xformer = TransformerFactory.newInstance().newTransformer();
// Set the public and system id
xformer.setOutputProperty(OutputKeys.METHOD, “xml”);
xformer.setOutputProperty(OutputKeys.ENCODING, “ISO-8859-1”);
xformer.setOutputProperty(OutputKeys.INDENT, “yes”);