Vous essayez de faire afficher une chaine de caractères contenant des double-guillemets (") à votre dernier module écrit en Java, et vous n'obtenez pas le résultat escompté. Comme c'est le cas dans d'autres langages de programmation, les double-guillemets ont pour fonction sous Java de délimiter une chaine de caractères. Des double-guillemets ne peuvent être insérés en tant que caractère " dans une chaine à afficher sans l'assistance du caractère d'échappement ou de leur code ASCII. Ce n'est pas compliqué, mais voici comment faire.

Méthode 1
Méthode 1 sur 2:
Utiliser l'antislash comme caractère d'échappement

  1. 1
    Saisissez le caractère d'échappement \. Le double-guillemet " est un délimiteur de chaine littérale sous Java, et pour pouvoir l'afficher en tant que caractère, vous devrez le faire précéder de l'antislash ou barre oblique inverse, qui n'est autre que la représentation du caractère d'échappement Escape. Le rôle de l'antislash consiste à informer le compilateur que le caractère qui le suit doit être affiché comme tel.
    Publicité
  • Prenez-soin de vérifier que vous tapez bien la barre oblique inverse et non la barre oblique, sa position varie selon le clavier que vous utilisez. Sur un clavier français, il se trouve au troisième niveau de la touche _. Vous l'obtiendrez donc en pressant simultanément Alt gr qui se trouve à droite de votre barre d'espace avec la touche _.
  • Tapez \" pour afficher le double-guillemet. Ces deux caractères joints constituent une séquence d'échappement. Chaque séquence d'échappement a un comportement différent. Dans le cas qui nous intéresse, \" ne fera qu'insérer un double-guillemet affichable à l'emplacement courant de la chaine de caractères, sans qu'il ne puisse être interprété comme un début ou une fin de chaine par le compilateur.
    • Vous devrez utiliser cette séquence chaque fois que vous voudrez afficher le caractère " ou double-guillemet.
  • Continuez normalement votre programme. La séquence d'échappement n'affectera pas votre code et vous n'aurez pas besoin de taper autre chose pour continuer normalement votre programme.
  • N'oubliez pas de placer les guillemets d'encadrement. Une des erreurs les plus classiques consiste à oublier le double-guillemet qui sera nécessaire pour délimiter la fin de la chaine de caractère à afficher. Souvenez-vous que \" n'est utilisé que comme caractère affichable et ne pourra pas remplacer un double-guillemet ayant pour fonction d'encadrer le texte à afficher. Vous trouverez ci-dessous un exemple concret permettant d'afficher la chaine « Bonjour » :
    • la chaine servant à afficher « Bonjour », les double-guillemets inclus, se présente sous la forme \"Bonjour\"
    • pour que le compilateur affiche cette chaine comme telle, il sera nécessaire de l'encadrer avec des double-guillemets et nous devrons la lui présenter ainsi : "\"Bonjour\""
    • 3. Voici comment sera écrite la ligne de code complète :
      System.out.println("\"Bonjour\"");
      

    Méthode 2
    Méthode 2 sur 2:
    Utiliser le code ASCII

    1. 1
      Utilisez le code ASCII (34) pour représenter le double-guillemet. Il est facile de remplacer un symbole par son caractère ASCII sous Java en utilisant le type de donnée char. Le code ASCII (34) représente le double-guillemet, et pourra être inséré dans la chaine à afficher sous la forme char(34) pour effectivement être affiché " sans qu'il ne soit interprété comme caractère d'encadrement.
    • Vous pourrez prendre connaissance des codes ASCII des divers symboles utilisables en recherchant une table des codes de représentation des caractères sur Internet.
  • Placez ce code hors de la chaine à afficher. Si vous faites l'erreur de placer le code ASCII du caractère à l'endroit où ce dernier doit être positionné dans la chaine, votre programme l'affichera exactement comme vous l'aurez inséré, soit char(34), ce qui n'est bien sûr pas le résultat escompté. La méthode correcte pour afficher la chaine « Bonjour », les guillemets qui l'encadrent faisant partie de cette dernière, est illustrée ci-dessous :
    System.out.println((char)34+"Bonjour"+(char)34);
    
  • Conseils

    • Voici une liste des autres séquences d'échappement utilisables sous Java :
      • \t : insère un caractère de tabulation à la position courante dans le texte
      • \b : insère un retour arrière à la position courante dans le texte
      • \n : insère un saut de ligne à la position courante dans le texte
      • \r : insère un retour-chariot à la position courante dans le texte
      • \f : insère un saut de page à la position courante dans le texte
      • \'  : insère une apostrophe à la position courante dans le texte
      • \"  : insère un double-guillemet à la position courante dans le texte
      • \\ : insère une barre oblique inverse (antislash) à la position courante dans le texte
    Publicité

    À propos de ce wikiHow

    wikiHow est un wiki, ce qui veut dire que de nombreux articles sont rédigés par plusieurs auteurs(es). Pour créer cet article, 14 personnes, certaines anonymes, ont participé à son édition et à son amélioration au fil du temps. Cet article a été consulté 7 986 fois.
    Catégories: Programmation
    Publicité