Mostrando postagens com marcador codificação. Mostrar todas as postagens
Mostrando postagens com marcador codificação. Mostrar todas as postagens

quinta-feira, 13 de maio de 2010

Codificação por cento para caracteres de escape em URL

O mecanismo de codificação por cento é utilizado para representar um octeto de dados em um componente, quando o caractere correspondente à este octeto está fora do conjunto permitido ou está sendo usado como um delimitador ou no interior do componente. O octeto em codificação por cento é representado em um caractere terceto, que consiste em um símbolo de porcentagem "%" seguido de dois dígitos hexadecimais, insensível à maiúsculas e minúsculas, que representam o valor numérico do octeto. Por exemplo, "%20" é a codificação por cento para o octeto binário "00100000", que corresponde ao caractere de "espaço" na tabela US-ASCII.

No Localizador-Padrão de Recursos (URL, Uniform Resource Locator), ou seja, em um endereço na Internet a codificação por cento é utilizada para prevenir a má interpretação dos caracteres especiais, como espaços, parêntesis e outros símbolos. O navegador Web analisa o endereço de localização e codifica/decodifica os caracteres especiais para que tudo funcione adequadamente.

O uso da codificação por cento é necessária nos casos de caracteres não imprimíveis, caracteres fora do padrão ASCII, caracteres reservados à sintaxe de uma URL ("$", "&", "+", ",", "/", ":", ";", "=", "?", "@") e caracteres inseguros que podem enganar uma URL (espaço, "<", ">", "#", "%", "{", "}", "|", "\", "^", "~", "[", "]", "`").

Tabela de caracteres de escape em URL:

Caractere    Codificação     Caractere     Codificação

espaço          %20             #             %23
$               %24             %             %25
&               %26             @             %40
`               %60             /             %2F
:               %3A             ;             %3B
<               %3C             =             %3D
>               %3E             ?             %3F
[               %5B             \             %5C
]               %5D             ^             %5E
{               %7B             |             %7C
}               %7D             ~             %7E
+               %2B             ,             %2C

Uma boa prática para o desenvolvedor na Internet é evitar o uso dos caracteres de escape na formulação de uma URL para os nomes de diretórios e arquivos. É recomendável também usar o hífen "-" ao invés do sublinhado "_" em uma URL pois alguns navegadores antigos não interpretam corretamente o sublinhado no CSS. Vale lembrar que a codificação por cento destes caracteres são diferentes da codificação dos caracteres especiais na linguagem HTML.

terça-feira, 16 de março de 2010

Converter a codificação de caracteres de um arquivo texto

No Linux existe um comando chamado "iconv", do pacote "glibc-common" (no Fedora é este pacote, em outras distros pode ser outro), que serve para converter a codificação de caracteres de um arquivo texto de um padrão para outro.

Executando o comando com o parâmetro "--list", retorna-se a lista com todas as codificações suportadas e aceitas nos parâmetros "--from-code=" e "--to-code=" (ou -f e -t respectivamente). O arquivo de saída é definido no parâmetro "--output", ou "-o". Por exemplo:

$ iconv --from-code=UTF-8 --to-code=ISO-8859-1 utf.txt -o iso.txt

Caso queira descobrir em qual codificação de caracteres está o arquivo texto use o comando "file", do pacote de mesmo nome, com o parâmetro "-i". Por exemplo:

$ file -i arquivo.txt

Consulte as páginas manuais destes dois comandos para mais informações.