|
|
Os car�teres do original de XML podem ser codificados em formatos diferentes. Pelo defeito XML usa o car�ter de Unicode (UTF-8 ou UTF-16) - ajustar, mas outros encodings podem ser usados se forem declarados na declara��o de XML no come�o do original.
|
Devido ao problema codificando voc� pode come�ar erros diferentes, quando voc� tenta carregar um original de XML no Internet Explorer:
|
�Comutar do encoding atual ao encoding especificado n�o suportado.�
|
Tal tipo de erro gera devido � inconsist�ncia entre o encoding do car�ter especificado na declara��o de XML e o encoding real do car�ter usado colocar em s�rie o original de XML. Em XML todos os car�teres v�m do car�ter universal - ajustar (UCS), que assoc�a sempre um ponto de c�digo num�rico com cada car�ter. Muitos algoritmos existem para pontos de c�digo convertendo-se em uma seq��ncia dos bytes. Um encoding espec�fico do car�ter deve ser usado colocar em s�rie um original de XML. Por exemplo, se voc� datilografar um original de XML no notepad e excepto ele, voc� pode escolher de um de diversos encodings suportados do car�ter including ISO-8859-1, UTF-8, ou UTF-16. De acordo com a especifica��o de XML 1.0, todos os processadores s�o requeridos detectar e suportar automaticamente os encodings UTF-8 e UTF-16. Voc� n�o necessita uma declara��o de XML se voc� usar um destes dois encodings ao colocar em s�rie seus originais,
|
<?xml version="1.0" encoding="UTF-8"?> <!-- optional -->
|
Se voc� usar o encoding diferente � excep��o de UTF-8/UTF-16, ent�o voc� deve usar uma declara��o de XML especificar o encoding real usado. Sem saber o que o encoding foi usado realmente como poder o processador leu a informa��o codificando?
� f�cil para processadores auto-detect entre UTF-8/UTF-16 com ou sem uma declara��o de XML procurando uma marca da ordem do byte (BOM) requerida nos originais UTF-16. Para todos encodings restantes, voc� sabe que os primeiros cinco car�teres devem ser �<? xml�. Desde que um processador dado suportar� somente um jogo finito dos encodings, um algoritmo do brute-force pode ser usado que olhe simplesmente o primeiro poucos bytes para determinar a fam�lia do encoding do car�ter usado (h� cinco fam�lias codificando poss�veis including UTF-16 endian grande, UTF-16 pouco endian, UCS-4 ou o outro encoding de 32 bocados, EBCDIC, e tudo mais). Uma vez que o processador detecta a fam�lia codificando, pode ler o descanso da declara��o de XML (desde que somente um jogo restrito dos car�teres pode ser usado na declara��o de XML), ent�o ele pode comutar a usar o encoding especificado do car�ter dentro da fam�lia detectada. Se, neste momento, a declara��o de XML disser o processador para comutar a um encoding de uma fam�lia completamente diferente, esse erro ocorre. Assim quando voc� conserva um original usando um encoding espec�fico, a seguir indicar um encoding diferente na declara��o de XML, voc� come�ar� este erro porque os encodings devem concordar.
|
Um car�ter inv�lido foi encontrado no �ndice do texto.
|
Esta mensagem de erro gera quando um car�ter no original de XML n�o combina o atributo do encoding e nenhum todo o atributo do encoding foi especificado. Normalmente voc� come�ar� esta mensagem de erro se seu original de XML contiver car�teres �extrangeiros� e a lima estiver conservada com um editor codificando de �nico-byte como o notepad.
|
Notepad do Windows 2000 sem codificar
|
As limas do Notepad do Windows 2000 podem conservar como o formato de Unicode.
|
Excepto a lima de XML abaixo como Unicode (pa�s que o original n�o contem nenhum atributo do encoding):
|
<?xml version="1.0"?>
<Country>
<from>India</from>
<to>China</to>
</Country>
|
A lima acima n�o gerar� um erro em IE 5+, Firefox, ou �pera, mas gerar� um erro em Netscape 6.2.
|
Notepad do Windows 2000 com codificar
|
As limas do notepad do Windows 2000 conservadas como Unicode usam o formato �UTF-16� codificando.
Se voc� adicionar um atributo do encoding �s limas de XML conservadas como Unicode, as janelas que codificam valores gerar�o um erro.
|
O seguinte encoding n�o gera a mensagem de erro:
|
<?xml version="1.0" encoding="windows-1252" ?>
<!-- Edited with XML Spy v2006 (http://www.altova.com)
-->
-<Country>
<to>China</to>
<from>India</from>
<heading>remind language</heading>
<body>Norwegian: ���. French: ���</body>
</Country>
|
O seguinte encoding n�o gera a mensagem de erro:
|
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!-- Edited with XML Spy v2006 (http://www.altova.com)
-->
-<Country>
<to>China</to>
<from>India</from>
<heading>remind language</heading>
<body>Norwegian: ���. French: ���</body>
</Country>
|
O seguinte encoding n�o gera a mensagem de erro:
|
<?xml version="1.0" encoding="UTF-8" ?>
<!-- Edited with XML Spy v2006 (http://www.altova.com)
-->
-<Country>
<to>China</to>
<from>India</from>
<heading>remind language</heading>
<body>Norwegian: ���. French: ���</body>
</Country>
|
> o seguinte encoding n�o gerar� um erro em IE 5+, Firefox, ou �pera, mas em Netscape 6.2 gerar� um erro.
|
<?xml version="1.0" encoding="UTF-16" ?>
<!-- Edited with XML Spy v2006 (http://www.altova.com)
-->
-<Country>
<to>China</to>
<from>India</from>
<heading>remind language</heading>
<body>Norwegian: ���. French: ���</body>
</Country>
|
Keywords:
xml document, xml parser, xml schema, xml declaration,
xml-encoding,
xsl encoding,
xml encoding,
xml encode,
xml unicode encoding,
xslt encoding,
xml charset,
xml base64,
xml encoding declaration,
xml encoding utf 8,
xml encoding iso 8859 1,
java xml encoding,
xml iso 8859 1,
xml character encoding,
xml iso 8859,
xml encoding iso 8859,
xml encoding utf,
xml encoding iso,
xml encoded,
xml version 1.0 encoding utf 8,
xml version 1.0 encoding,
xml version 1.0 encoding iso 8859 1,
javax xml rpc encoding,
xml version 1.0 encoding utf 16.
|