Devrait le code source soit enregistré au format UTF-8
Comment est-il important d'enregistrer votre code source au format UTF-8?
Eclipse sous Windows utilise CP1252 de codage de caractères par défaut. Le CP1251 format non les caractères UTF-8 peut être sauvé et j'ai vu cela se produire si vous copiez et coller à partir d'un document Word pour un commentaire.
La raison que je demande, c'est parce que d'habitude je configurer Maven codage pour être en format UTF-8 et récemment, il a pris un peu de non cartographiables erreurs.
(mise à jour) Veuillez ajouter toutes les raisons de le faire et pourquoi, il y a quelques pièges courants qui doivent être connus?
(mise à jour) Quel est votre objectif? Pour trouver la meilleure pratique donc quand demander pourquoi devrions-nous utiliser l'UTF-8, j'ai une bonne réponse, je n'ai pas.
- Non les caractères UTF-8? Si CP1251 a vraiment, alors je préfère ne pas les avoir dans le code source.
- UTF-8 peut coder TOUS les caractères que Java peut utiliser (Unicode). Ce tableau semble impliquer que chaque caractère dans CP1251 peut être mappé à un caractère Unicode. Je ne sais pas ce que "non cartographiables erreurs", sauf peut-être si Maven est à l'aide d'un interne, plus restrictif, de jeu de caractères. unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1251.TXT
Vous devez vous connecter pour publier un commentaire.
Quel est votre objectif? Solde de vos besoins à la lumière des avantages et des inconvénients de ce choix.
UTF-8 pour
\uHHHH
échapperUTF-8 Contre
\uHHHH
augmente le risque de corruption de caractèresASCII Pros
ASCII Contre
Remarque: ASCII 7 bits, pas de "extended" et à ne pas confondre avec Windows-1252, ISO 8859-1, ou quoi que ce soit d'autre.
Important, c'est au moins que vous avez besoin pour être cohérente avec l'encodage utilisé pour éviter les harengs. Donc non, " X " ici, il Y et Z d'ailleurs. Enregistrer le code source dans le codage de X. Définir le code d'entrée de l'encodage X. Définir le code de sortie de l'encodage X. Jeu characterbased de transfert FTP pour l'encodage X. Etc.
Aujourd'hui
UTF-8
est un bon choix car il couvre tous les caractères de l'homme dans le monde est au courant et est un peu partout pris en charge. Donc, oui, je mettrais de l'espace de travail d'encodage à elle aussi. J'ai aussi de l'utiliser pour.public
,class
,null
, etc, pas sur les identificateurs.Éclipse du paramètre par défaut de l'utilisation de la plate-forme de codage par défaut est une mauvaise décision à mon humble avis. J'ai trouvé nécessaire de modifier la valeur par défaut est UTF-8, peu de temps après son installation, car certains de mes fichiers source utilisés (probablement à partir d'extraits de copié/collé à partir de pages web.)
Le Langage Java et l'API spécifications exigent le support UTF-8 alors vous êtes certainement d'accord aussi loin que les outils standard de l'aller, et c'est un long temps depuis que j'ai vu un décent de l'éditeur qui ne supporte pas l'UTF-8.
Même dans des projets qui utilisent JNI, vos sources C sera normalement en US-ASCII, qui est un sous-ensemble de l'UTF-8, de façon à avoir à la fois ouvert dans le même IDE ne sera pas un problème.
Oui, à moins que votre compilateur/interpréteur n'est pas en mesure de travailler avec les fichiers UTF-8, il est certainement le chemin à parcourir.
-encoding
argument par la voie. Bon point cependant, +1.Je ne pense pas qu'il y a vraiment une réponse positive ou négative à cette question. Je dirais que les lignes directrices suivantes devraient être utilisées pour choisir un format d'encodage, par ordre de priorité (de la plus haute à la plus basse):
1) Choisir un encodage de votre chaîne d'outil prend en charge. C'est beaucoup plus facile qu'elle ne l'habitude d'être. Même dans la mémoire récente, beaucoup de compilateurs et des langues essentiellement pris en charge uniquement des caractères ASCII, ce qui est plus ou moins forcé les développeurs dans le codage des langues d'europe Occidentale. Ces jours-ci, beaucoup de nouveaux appui aux langues des autres encodages, et presque tous les honnêtes des éditeurs et des IDEs de soutenir un considérablement longue liste d'encodages. Encore... il y a juste assez trublions que vous avez besoin de vérifier avant de vous installer sur un codage.
2) Choisir un codage qui prend en charge autant de l'alphabet que vous souhaitez utiliser que possible. Je place cela comme une priorité secondaire parce que franchement, si vos outils ne prennent pas en charge, il n'a pas vraiment d'importance si vous aimez le codage mieux ou pas.
UTF-8 est un excellent choix dans de nombreuses circonstances du monde d'aujourd'hui. C'est moche, peu élégante, mais elle permet de résoudre une multitude de problèmes (à savoir traiter avec le code existant) qui cassent les autres encodages, et il semble devenir de plus en plus la norme de facto de l'encodage des caractères. Il prend en charge tous les principaux de l'alphabet, sacrément près chaque éditeur sur la planète prend en charge maintenant, et d'une multitude de langues et les compilateurs de le soutenir, trop. Mais comme je l'ai mentionné ci-dessus, il y a juste assez héritage des récalcitrants que vous avez besoin de vérifier votre outil de la chaîne de bout en bout avant de choisir définitivement.