IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Classe Scanner sur les chaînes


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de blackhock
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 75
    Par défaut Classe Scanner sur les chaînes
    Bonjour à tous, je suis bloqué sur un point et j’ai besoin de votre avis svp :
    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    import java.io.FileNotFoundException;
    import java.util.Scanner;
    import defaultPkg.ReadFile;
     
    public class TreatmentFile {
     
    	public static String omega;
    	public static void treatement() throws FileNotFoundException {
     
    		Scanner scanner = new Scanner(Text);
     
    		try {
    			while (scanner.hasNext()){
    				if (scanner.hasNext()){
    					String alpha = scanner.next();
    					omega = alpha.replace("&", "");
     
    				} else {
    					System.out.println("Empty or invalid line. Unable to process.");
    				}
    				System.out.println (omega);
    			}
    		} finally {
    			scanner.close();
    		}
     
    	}
    Alors je veux utiliser la classe plusieurs fois pour faire plusieurs modifications sur mon texte d’entrée, mais je ne sais pas trop comment faire ça plusieurs fois.
    Je précise que je travaille sur des chaînes de caractères et j’aimerais bien remplacer plusieurs chaînes par d’autres.
    Merci d’avance pour toute réponse
    Cordialement

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    1) Je ne comprends pas très bien la question...
    2) Je ne voie pas comment ta classe peut compiler alors que tu utilises une variable "Text" non définie.

    Je pense que tu devrais relire les tutoriaux (http://java.developpez.com/cours/), ainsi que la FAQ dans laquelle tu trouveras des exemples d'utilisation de la classe Scanner (http://java.developpez.com/faq/).
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  3. #3
    Membre confirmé Avatar de blackhock
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 75
    Par défaut Scanner
    Bonjour CyberChouan et merci pour ta réponse,
    Alors mon Text en fait est un fichier .txt j’utilise une autre classe pour le lire et je fais l’import tout simplement, mais mon vrai problème est le suivant :

    import java.io.FileNotFoundException;
    import java.util.Scanner;
    import default.ReadFile;

    public class TreatmentFile {

    public static String omega = "";
    public static String omega2 = "";
    public static String omega3 = "";

    public static void treatement() throws FileNotFoundException {

    Scanner scanner = new Scanner(ReadFile.Text);
    Scanner scanner2 = new Scanner(ReadFile.Text);
    Scanner scanner3 = new Scanner(ReadFile.Text);
    try {
    while ((scanner.hasNext()) || (scanner2.hasNext())) {
    // scanner.useDelimiter("&");

    if ((scanner.hasNext()) || (scanner2.hasNext())) {
    String alpha = scanner.next();
    String beta = scanner2.next();
    String gamma = scanner3.next();
    omega = alpha.replace("&", "");
    omega2 = beta.replace("add", "Add");
    omega3 = gamma.replace("set", "Set");
    } else {
    log("Empty or invalid line. Unable to process.");
    }
    System.out.println (omega);
    System.out.println(omega2);
    System.out.println(omega3);
    }
    } finally {
    scanner.close();
    }


    }

    En fait je veux faire plusieurs traitement sur mon text et afficher un seul text à la sortie(au lieu de omega 1,2,3, je veux qu’un seul omega avec toutes mes modifs)
    Merci encore pour votre aide
    Cordialement

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 764
    Par défaut
    Citation Envoyé par blackhock Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Scanner scanner = new Scanner(ReadFile.Text);
    Scanner scanner2 = new Scanner(ReadFile.Text);
    Scanner scanner3 = new Scanner(ReadFile.Text);
    // [...]
    String alpha = scanner.next();
    String beta = scanner2.next();
    String gamma = scanner3.next();
    // [...]
    omega = alpha.replace("&", "");
    omega2 = beta.replace("add", "Add");
    omega3 = gamma.replace("set", "Set");
    // [...]
    System.out.println(omega);
    System.out.println(omega2);
    System.out.println(omega3);
    En fait je veux faire plusieurs traitement sur mon text et afficher un seul text à la sortie(au lieu de omega 1,2,3, je veux qu’un seul omega avec toutes mes modifs)
    Tout d'abord, utilise les balises [code], histoire d'être plus lisible...

    Ensuite, ce que tu effectues dans ton code c'est un traitement "en parallèle" : tu effectues trois traitements indépendants sur les mêmes données d'entrée. Tu dis vouloir effectuer ces différents traitements sur les mêmes données, il s'agirait d'un traitement "en série" : tu lis une seule fois tes données d'entrée, puis tu effectues le traitement 1 sur les données, puis le traitement 2 sur le résultat du premier traitement au lieu des données d'entrée, etc... J'ai du mal à voir ce qui te bloque dans ce concept
    Ça donnerait donc, dans mon bout de code simplifié :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Scanner scanner = new Scanner(ReadFile.Text);
    // [...]
    String data = scanner.next();
    // [...]
    data = data.replace("&", "");
    data = data.replace("add", "Add");
    data = data.replace("set", "Set");
    // [...]
    System.out.println(data);

  5. #5
    Membre confirmé Avatar de blackhock
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 75
    Par défaut
    MERCI beaucoup Astartee, c'est super sympa...
    MERCI à TOUS

Discussions similaires

  1. Exercice sur les chaînes de caractères
    Par L'aigle de Carthage dans le forum Pascal
    Réponses: 6
    Dernier message: 31/10/2008, 20h48
  2. Besoin d'exercices sur les chaînes de caractères
    Par Elammath dans le forum Général Python
    Réponses: 7
    Dernier message: 30/06/2008, 13h09
  3. [requète] travail sur les chaînes de caractères
    Par just xav dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 16/07/2007, 14h08
  4. Réponses: 9
    Dernier message: 16/02/2007, 21h37
  5. [Tableaux] sur les chaînes (strstr, substr, etc.)
    Par tigzirt dans le forum Langage
    Réponses: 1
    Dernier message: 09/05/2006, 11h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo