Teste a declaração XML e adicione se estiver faltando

Teste a declaração XML e adicione se estiver faltando

Eu tenho um programa que espera arquivos XML de entrada com uma declaração XML no formato <?xml version="1.0" encoding="UTF-8"?>(todos os nossos arquivos são UTF-8, realmente tem que ser essa string).

Alguns dos meus arquivos de entrada não possuem a declaração XML.

Qual é a melhor maneira de testar um arquivo para ver se ele começa com essa declaração XML e anexá-lo se estiver faltando? Existe um comando para isso?

Responder1

xmllint fez o trabalho!

$ cat foo.xml
<A>B</A>
$ xmllint foo.xml --encode UTF-8
<?xml version="1.0" encoding="UTF-8"?>
<A>B</A>
$

informação relacionada