Pergunta

Tirei algumas marcas que eu achava que eram desnecessários de um arquivo XML. Agora quando eu tento analisá-lo, meu parser SAX gera um erro e diz meu arquivo não está bem formado. No entanto, eu sei que cada marca de início tem uma tag final. tag de abertura do arquivo tem um link para um esquema XML. isso poderia estar causando o problema? Se assim for, então como faço para corrigir isso?

Edit: Eu acho que eu encontrei o problema. Meus dados de caracteres contém "& lt" e "& gt" personagens, presumivelmente de html tags. Depois de ser analisado, estes são convertidos em "<" e ">" caracteres, o que parece incomodar o parser SAX. Existe alguma maneira de impedir que isso aconteça?

Foi útil?

Solução

O analisador SAX não dará detalhes sobre , onde ele pensa que não é bem-formada?

Você já tentou carregar o arquivo em um editor de XML e verificando-lo lá? Fazer outras analisadores XML aceitá-lo?

O esquema não deve mudar ou não o XML é bem-formado ou não; ele pode muito bem mudar se é válido ou não. Veja a entrada wikipedia para XML boa formação para um pouco mais, ou o < a href = "http://www.w3.org/XML/Core/#Publications" rel = "nofollow noreferrer"> especificações XML para muito mais detalhes:)

EDIT: Para representar "&" no texto, você deve escapar-lo como &amp;

Assim:

&lt

deve ser

&amp;lt

(supondo que você realmente quer e comercial, l, t).

Outras dicas

Gostaria de sugerir colocar essas tags de volta e ter certeza que ele ainda funciona. Então, se você quiser tirá-los, fazê-lo um de cada vez até que ele quebra.

No entanto, eu questionar a sabedoria de levá-los para fora. Se é o seu arquivo XML, você deve entendê-lo melhor. Se é um arquivo XML de terceiros, você realmente não deveria estar brincando com ele (até entendê-lo melhor: -).

Eu segunda recomendação para tentar analisá-lo usando outro parser XML. Isso deve dar uma indicação sobre se é o documento que está errado, ou analisador.

Além disso, a mensagem de erro real pode ser útil. Um problema bastante comum, por exemplo, é que a declaração XML (se este for usado, é opcional) deve ser a primeira coisa -. Nem mesmo espaço em branco é permitido antes

Você pode carregá-lo no Firefox, se você não tiver um editor XML. Firefox mostra o erro.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top