50 votes

ISO-8859-1 vs. UTF-8 ?

Quand devrait-on utiliser et pourquoi ? Est-il toujours préférable d'utiliser l'UTF-8 ? Ou l'ISO-8859-1 conserve-t-il encore de l'importance dans des conditions spécifiques ?

Le jeu de caractères est-il lié à la région géographique ?


Y a-t-il un avantage à utiliser le code @charset "utf-8"; ?

Ou comme ceci

au début du fichier CSS ?

J'ai trouvé cela pour cela

Si Dreamweaver ajoute la balise lorsque vous ajoutez un style intégré au document, c'est un bug dans Dreamweaver. D'après la FAQ du W3C :

"Pour les déclarations de style intégrées dans un document, les règles @charset ne sont pas nécessaires et ne doivent pas être utilisées."

La spécification du jeu de caractères fait partie de CSS depuis la version 2.0 (mai 1998), donc si vous avez une spécification du jeu de caractères dans un fichier CSS et que Safari ne peut pas la gérer, c'est un bug dans Safari.

Et ajoutez accept-charset dans le formulaire :

Et que doit-on utiliser si j'utilise le doctype XHTML ?

ou

58voto

nes1983 Points 7046

L'Unicode prend le dessus et a déjà dépassé tous les autres. Je vous suggère de monter à bord du train dès maintenant.

Notez qu'il existe plusieurs variantes d'Unicode. Joel Spolsky donne un aperçu.

Unicode est en train de gagner (Graphique actuel datant de Fév. 2012, voir commentaire ci-dessous pour des valeurs plus précises.)

43voto

Rob Wells Points 21714

Je recommanderais fortement de lire l'excellent article de Joel "Le strict minimum que tout développeur de logiciels doit absolument savoir sur Unicode et les jeux de caractères (Pas d'excuses!)".

Cela vous aidera à comprendre ce qui se passe.

8voto

Tor Valamo Points 14209

UTF-8 est pris en charge partout sur le web. Ce n'est que dans des applications spécifiques que ce n'est pas le cas. Vous devriez toujours utiliser UTF-8 si vous le pouvez.

L'inconvénient est que pour des langues comme le chinois, UTF-8 prend plus d'espace que, par exemple, UTF-16. Mais si vous ne prévoyez pas d'utiliser le chinois, ou même si vous le faites, alors UTF-8 est bon.

Le seul inconvénient d'utiliser UTF-8 est qu'il prend plus d'espace par rapport à divers encodages, mais par rapport aux langues occidentales, il ne prend presque pas d'espace supplémentaire du tout, sauf pour des caractères très spéciaux, et ces octets supplémentaires vous pouvez vous en passer. Nous sommes en 2009 après tout. ;)

3voto

BalusC Points 498232

Si vous voulez la domination mondiale, utilisez UTF-8 tout au long, car cela couvre tous les caractères humains disponibles dans le monde, y compris asiatiques, cyrilliques, hébreux, arabes, grecs, et ainsi de suite, tandis que ISO-8859 est uniquement restreint aux caractères latins. Vous ne voulez pas avoir de Mojibake.

-1voto

Chris Becke Points 19910
  • ISO 8859-1 est un excellent encodage à utiliser lorsque l'espace est limité et que vous ne souhaitez encoder que des caractères des langues latines de base qu'il prend en charge. Et vous n'aurez jamais à envisager de mettre à jour votre application pour prendre en charge des langues non latines.

  • UTF-8 est un moyen fantastique soit (a) d'utiliser la grande base de code de bibliothèques de codage de 8 bits par caractère qui existent déjà, soit (b) d'être un snob de l'euro. UTF-8 code la norme ASCII en un octet par caractère, Latin 1 en 2 octets par caractère, les langues d'Europe de l'Est et asiatiques obtiennent trois octets par caractère. Il peut aller jusqu'à quatre octets par caractère si vous commencez à essayer de encoder des langues anciennes qui n'existent pas dans le plan multilingue de base.

  • UTF-16 est un excellent moyen de démarrer une nouvelle base de code à partir de zéro. Il est totalement neutre sur le plan culturel - tout le monde obtient équitablement deux octets par caractère. Il a besoin de quatre octets par caractère pour les langues anciennes/exotiques - ce qui signifie - dans le pire des cas - qu'il est aussi mauvais que son grand frère :

  • UTF-32 est une perte d'espace.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X