Remplacer un caractère par une autre en Java

Résolu/Fermé
Omario - 9 mai 2011 à 18:53
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 - 9 mai 2011 à 20:17
Bonjour,

Je suis un débutant du monde java; je voudrais remplacer tout "é" par "e" dans un texte , j'ai essayé avec mon_texte=mon_texte.replaceAll("é","e"); mais sans fruits :(

Si c'est possible de me débloquer de ce problème, je serai reconnaissant de votre aide ! et merci d'avance

A voir également:

2 réponses

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
Modifié par KX le 9/05/2011 à 20:19
En effet, tu peux utiliser replace, mais attentions aux accents !!!

Java utilise les caractères Unicode donc quand tu compile 'é' c'est le caractère Unicode 233 alors que si tu l'entres en console avec un clavier français c'est le caractère 195...
Il faut convertir avec le bon ensemble de caractères pour faire ce que tu veux.

import java.io.UnsupportedEncodingException;
import java.util.Scanner;

public class Main 
{
   public static void main(String[] args) throws UnsupportedEncodingException
   {
      System.out.print("Mot : "); // bébé

      String s = new String(new Scanner(System.in).nextLine());
      System.out.println(s.replace('é', 'e')); // bébé

      s = new String(s.getBytes("ISO-8859-1"));
      System.out.println(s.replace('é', 'e')); // bebe
   }
}

La confiance n'exclut pas le contrôle
2