2008-10-14 8 views
24

Comment utiliser/afficher des caractères tels que ♥, ♦, ♣ ou ♠ dans Java/Eclipse?Comment utiliser les caractères spéciaux dans Java/Eclipse

Lorsque j'essaie de les utiliser directement, par ex. dans le code source, Eclipse ne peut pas enregistrer le fichier.

Que puis-je faire? Editer: Comment trouver la séquence d'échappement Unicode?

+0

vous pouvez toujours appuyer sur Alt + number-from-keypad, il suffit de connaître la table ascii. – Infested

Répondre

34

Le problème est que les caractères que vous utilisez ne peuvent pas être représentés dans l'encodage sur lequel vous avez défini le fichier (Cp1252). La façon dont je le vois, vous avez essentiellement deux options:

Option 1. Modifiez le codage.According to IBM, vous devez définir le codage sur UTF-8. Je crois que cela résoudrait votre problème.

  • Définir le fichier texte global encodage préférence Workbench> Editeurs à "UTF-8".
  • Si un codage autre que UTF-8 est requis, définissez le codage sur le fichier individuel plutôt que d'utiliser le paramètre de préférence globale. Pour ce faire, utilisez la sélection de menu Fichier> Propriétés> Info pour définir l'encodage sur un fichier individuel.

Option 2. Retirez les caractères qui ne sont pas pris en charge par le codage des caractères "Cp1252". Vous pouvez remplacer les caractères non pris en charge par Unicode escape sequences (\ uxxxx). Bien que cela vous permettrait de sauvegarder votre fichier, ce n'est pas forcément la meilleure solution.

Pour les caractères que vous avez spécifié dans votre question ici sont les séquences d'échappement Unicode:

♥ \u2665 
♦ \u2666 
♣ \u2663 
♠ \u2660 
+1

Je dirais que la deuxième option est préférable, car il rend le fichier plus portable entre différents codages source. Cela dépend de l'emplacement des caractères (littéraux de chaînes? Commentaires? READMEs?). – McDowell

+4

Je dirais que la première option est préférable parce que toute personne qui utilise un codage autre que UTF-8 (certainement toute personne qui utilise un codage spécifique au pays) pour leurs fichiers source a besoin d'aide. :) – Cowan

+2

Les fichiers sources Java sont traités par défaut comme le codage du système d'exploitation (certains CP 8 bits sous Windows, UTF8 sous Linux). Ne pas écrire en ASCII signifie que vous devez vous assurer que les développeurs le savent avant de compiler et risquent d'introduire des bogues s'ils ne le font pas. Les choses I18N devraient être dans les fichiers de propriétés (UTF8 par définition). – McDowell

2

Modifiez votre encodage pour qu'il corresponde, par ex. UTF-8 ou recherchez le numéro Unicode approprié et utilisez une séquence d'échappement \ uxxxx pour le représenter.

+0

Comment trouver le numéro Unicode? – Burkhard

+0

Regardez dans les pages de code à http://unicode.org –

9

Il peut être résolu en réglant le codage dans Eclipse:

1er chemin:

Dans le menu sélectionnez Fichier -> Propriétés puis au "Codage du fichier texte" section: Sélectionnez Autre radio, Sélectionnez UTF-8 dans combo -> Enfin cliquez sur le bouton OK

2ème façon:

Faites un clic droit sur le fichier spécifique (disons Test.java) -> Propriétés . Dans fichier texte de codage de la section: Sélectionnez Autre radio, sélectionnez UTF-8 de combo -> cliquez enfin sur OK

3ème voie:

Si vous voulez faire ce changement pour tous vos projets vont à Fenêtre -> Préférences -> Général -> Espace de travail.Dans section fichier texte d'encodage: Sélectionnez Autre radio, sélectionnez UTF-8 de combo -> cliquez sur le bouton OK Enfin

2

Trouver la séquence d'échappement unicode: voir ces Unicode charts. Vos personnages sont dans le Misc. Tableau des symboles, \ u2660 et plus.

15

Dans Eclipse:

  1. Aller à la fenêtre -> Préférences -> Général -> Espace de travail -> TextFileEncoding
  2. Set en UTF-8
+1

Beaucoup plus pragmatique que la réponse acceptée. CA aide – onmyway133

0

Menu Windows -> Préférences -> Général (développez-le) -> Espace de travail (cliquez dessus). Rechercher une boîte "Encodage de fichier texte". La valeur par défaut sera "Cp1252". Modifiez la radio pour sélectionner autre et sélectionnez "UTF-8" dans la liste déroulante.

2

expansion un peu Lencioni répondre @ Joe

Vous pouvez utiliser AnyEdit plugin Eclipse (install-pouvoir de marché Eclipse) pour convertir facilement le texte Unicode en Java Unicode échappe:

  • Sélectionnez char/texte avec des caractères non-ASCII
  • clic droit
  • Convertir> Pour Unicode notation

Une mise en garde mineure est que AnyEdit veut d'abord enregistrer le fichier qui est évidemment interdit par Eclipse jusqu'à ce que vous ayez corrigé votre texte.

Questions connexes