LMMD-MUS LMMD-MUS LMMD-MUS

home HOME

XML Básico
XML INÍCIO
XML Introdução
XML Como usar
XML Sintaxe
XML Elementos
XML Atributos
XML Validação
XML Navegadores
XML Ver
XML Exibir com CSS
XML Exibir com XSL
XML Data Islands
XML Parser
XML na Vida Real

XML Advanced
XML Namespaces
XML CDATA
XML Codificação
XML Servidor
XML Aplicações
XML HTTP
XML Comportamentos
XML Tecnologias
XML Editores

Codificação da XML

Anterior Próxima

Os documentos em XML podem conter caracteres estrangeiros como Norueguês æøå, ou Francês êèé.

Para permitir que o parser entenda estes caracteres, você deve salvar seus documentos em XML como Unicode.


O Notepad (bloco de notas) do Windows 95/98

O Notepad do Windows 95/98 não pode salvar arquivos no formato Unicode.

Você pode usar o Notepad para editar e salvar documentos em XML que contém caracteres estrangeiros (como Norueguês æøå, ou Francês êèé),

<?xml version="1.0"?>
<bilhete>
  <de>Maria</de>
  <para>José</para>
  <mensagem>Norueguês: æøå. Francês: êèé</mensagem>
</bilhete>

Mas se você salvar o arquivo e abri-lo com o IE 5.0, você receberá uma MENSAGEM DE ERRO.


O Notepad do Windows 95/98 com Codificação

Os arquivos do Notepad do Windows 95/98 devem ser salvos com atributo de codificação.

Para evitar o erro você pode adicionar um atributo de codificação na sua declaração XML, mas você não pode usar Unicode.

A codificação abaixo (abrir com o IE 5.0), NÃO dará uma mensagem de erro:

<?xml version="1.0" encoding="windows-1252"?>

A codificação abaixo (abrir com o IE 5.0), NÃO dará uma mensagem de erro:

<?xml version="1.0" encoding="ISO-8859-1"?>

A codificação abaixo (abrir com o IE 5.0), NÃO dará uma mensagem de erro:

<?xml version="1.0" encoding="UTF-8"?>

A codificação abaixo (abrir com o IE 5.0), DARÁ uma mensagem de erro:

<?xml version="1.0" encoding="UTF-16"?>


O Notepad do Windows 2000

O Notepad do Windows 2000 pode salvar arquivos como Unicode.

O editor Notepad no Windows 2000 suporta Unicode. Se você selecionar este arquivo para salvar como Unicode (observe que o documento não contém qualquer atributo de codificação):

<?xml version="1.0"?>
<note>
  <from>Jani</from>
  <to>Tove</to>
  <message>Norwegian: æøå. French: êèé</message>
</note>

O seguinte arquivo: note_encode_none_u.xml, NÃO dará uma mensagem de erro se você abri-lo com o IE 5.0, mas se você abri-lo com o Netscape 6.2, ele DARÁ uma mensagem de erro.


O Notepad do Windows 2000 com Codificação

Os arquivos do Notepad do Windows 2000 salvos como Unicode usam codificação "UTF-16".

Se você adicionar um atributo de codificação aos arquivos XML salvos como Unicode, os valores de codificação windows gerarão um erro.

Esta codificação (abrir), NÃO dará uma mensagem de erro:

<?xml version="1.0" encoding="windows-1252"?>

Esta codificação (abrir), NÃO dará uma mensagem de erro:

<?xml version="1.0" encoding="ISO-8859-1"?>

Esta codificação (abrir), NÃO dará uma mensagem de erro:

<?xml version="1.0" encoding="UTF-8"?>

O seguinte arquivo; note_encode_utf16_u.xml, NÃO dará uma mensagem de erro se você abri-lo com o IE 5.0, mas se você abri-lo com o Netscape 6.2, ele DARÁ uma mensagem de erro.

<?xml version="1.0" encoding="UTF-16"?>


Mensagens de Erro

Se vocÊ tentar carregar um documento XML no Internet Explorer 5, você pode obter dois erros diferentes indicando problemas de codificação:

Um caractere inválido foi encontrado no conteúdo de texto.

Você receberá esta mensagem de erro se um caractere no documento XML não combina com o atributo de codificação. Normalmente você obterá esta mensagem de erro se o seu documento XML contém caracteres "estrangeiros", e o arquivo foi salvo com um editor de codificação single-byte como o Notepad, e nenhum atributo de codificação foi especificado.

Mudança da codificação atual para a codificação especificada não suportada.

Você obterá esta mensagem de erro se seus arquivos foram salvos como Unicode/UTF-16 mas o atributo de codificação especifica uma codificação single-byte como Windows-1252, ISO-8859-1 ou UTF-8. Você tqambém pode obter esta mensagem de erro se o seu documento foi salvo com codificação single-byte, mas o atributo de codificação especifica uma codificação double-byte como UTF-16.


Conclusão

A conclusão é que o atributo de codificação deve especificar a codificação usada quando o documento foi salvo. Meu melhor conselho para evitar erros é:

  • Use um editor que suporte codificação.
  • Certifique-se de qual codificação ele usa.
  • Use o mesmo atributo de codificação nos seus documentos XML.

Anterior Próxima