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

avec Java Discussion :

Problème programme Java


Sujet :

avec Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 2
    Points : 5
    Points
    5
    Par défaut Problème programme Java
    bonjour,
    nouveau dans la programmation sous java j'ai un petit soucis concernant des conditions dans mon programme
    je m'explique :

    voila j'ai un fichier de plusieurs blocs de lignes :

    bloc de lignes de 00 a 99 --> document

    chaque ligne est numerotée au debut c'est à dire :

    ligne numero 00 : 00 premiere ligne
    ligne numero 01 : 01 deuxieme ligne
    .
    .
    ligne numero 15 : 15 quinzieme ligne dsklghshsdg
    .
    .
    .
    ligne numero 30 : 30 nom
    ligne numero 31 : 31 prenom1
    ligne numero 31 : 31 prenom2
    .
    .
    ligne numero 50 : 50 adresse 1
    ligne numero 50 : 50 adresse 2
    ligne numero 50 : 50 adresse 3
    .
    .
    .
    .
    .
    ligne numero 99 : 99 fin
    en fin j'ai un fichier comme ca :

    00 premiere ligne
    01 deuxieme ligne
    .
    .
    15 quinzieme ligne dsklghshsdg
    .
    .
    .
    30 nom
    31 prenom1
    31 prenom2
    .
    .
    50 adresse 1
    50 adresse 2
    50 adresse 3
    .
    .
    .
    .
    .
    99 fin
    00 premiere ligne
    01 deuxieme ligne
    .
    .
    15 quinzieme ligne dsklghshsdg
    .
    .
    .
    30 nom
    31 prenom1
    31 prenom2
    .
    .
    50 adresse 1
    50 adresse 2
    50 adresse 3
    .
    .
    .
    .
    .
    99 fin
    00 premiere ligne
    01 deuxieme ligne
    .
    .
    15 quinzieme ligne dsklghshsdg
    .
    .
    .
    30 nom
    31 prenom1
    31 prenom2
    .
    .
    50 adresse 1
    50 adresse 2
    50 adresse 3
    .
    .
    .
    .
    .
    99 fin
    voila pour creer mes documents j'ai du faire des conditions avec if et else :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    if ligne00{
    System.out.println("debut");
    else if (ligne01) {
    System.out.println("suite");
    }
    else if (ligne02)
    .
    .
    .
    et ainsi de suite ...

    arrivé aux numeros de lignes en double ou triple par exemple ligne 31

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    else if (ligne31){
    tt=line.substring(0,15);
    System.out.println(tt);
    }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    //ou la ligne 50
     
    else if (ligne50){
    tt=line.substring(0,15) + line.substring(30,45);
    System.out.println(tt);
    }
    .
    .
    .
    .
    .
    }
    fin du programme

    voila mon probleme est que lorsque je fais ca, les lignes avec les memes numeros s'ecrivent l'une apres l'autre,moi je les veux sur une seule ligne
    j'ai essayé avec System.out.print(tt) sans saut de ligne ca marche j'ai toutes les lignes ayant le meme numero sur une seule ligne sauf qu'a la fin j'ai la ligne suivante qui debute sur cette meme ligne c'est à dire j'ai pas de saut de ligne a la fin
    je sais que je me suis mal exprimé mais j'espere que vous avez bien compris mon probleme
    merci d'avance

  2. #2
    Membre actif
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2009
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 130
    Points : 276
    Points
    276
    Par défaut
    Honnêtement moi, j'ai rien compris, en fait je ne comprend pas ce que tu as en entrée, et ce que tu veux obtenir en sortie, peux tu joindre des fichiers au sujet ?
    MigouW

    La seule bataille perdue d'avance est celle que l'on refuse de livrer.


    Pensez au tag
    Ma réponse vous a été utile, votez plus 1 sur le message.
    Ma réponse est hors sujet, votez moins 1 sur le message.

  3. #3
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 083
    Points
    7 083
    Par défaut
    Si j'ai bien compris il a un fichier avec des lignes qui sont numérotés de 00 à 99. 99 Représentant la fin d'une "section". Ensuite il veut afficher le contenu de sa section sur une seule ligne.

    Donc (si j'ai bien compris)
    il faut effectivement utiliser System.out.print, tu peux égalemer appeler System.out.flush si tu veux voir la construction de ta ligne au fur et à mesure.
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (ligne.startWith("99"))
    {
      System.out.println();
    }
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

  4. #4
    Membre averti

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2010
    Messages
    246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2010
    Messages : 246
    Points : 402
    Points
    402
    Par défaut
    que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.print("xxxx");
    ne place pas de retour chariot en fin de ligne est normal. Pour aller à la ligne, il éxiste deux méthodes simples : println ou "\n" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    //println() signifie "print line", voir javadoc.
    System.out.println("xxxx");
     
    //ou alors à la main :
    System.out.print("xxxx"+"\n");
    Après pour le reste de ton problème, je n'ai rien compris non plus
    C'est en aidant les autres qu'on en apprend beaucoup soi-même

  5. #5
    Membre actif
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2009
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 130
    Points : 276
    Points
    276
    Par défaut
    Citation Envoyé par Nemek Voir le message
    Si j'ai bien compris il a un fichier avec des lignes qui sont numérotés de 00 à 99. 99 Représentant la fin d'une "section". Ensuite il veut afficher le contenu de sa section sur une seule ligne.

    Donc (si j'ai bien compris)
    il faut effectivement utiliser System.out.print, tu peux égalemer appeler System.out.flush si tu veux voir la construction de ta ligne au fur et à mesure.
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (ligne.startWith("99"))
    {
      System.out.println();
    }

    en fait j'ai l'impression qu'entre les lignes 00 et 99 il peut y avoir plusieurs ligne 31 ou 70 ou xx et qu'il veut un fichier du type :

    ligne 00
    ligne xx
    ligne 31 ligne 31
    ligne xx
    ligne 70 ligne 70 ligne 70
    ligne 99

    et cela pour chaque section
    MigouW

    La seule bataille perdue d'avance est celle que l'on refuse de livrer.


    Pensez au tag
    Ma réponse vous a été utile, votez plus 1 sur le message.
    Ma réponse est hors sujet, votez moins 1 sur le message.

  6. #6
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 083
    Points
    7 083
    Par défaut
    Après relecture, il faut afficher les lignes commencant par le même numéro (en entrée) sur une seule ligne (en sortie)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    int last = -1;
    String ligne;
    while ((ligne = reader.readLine()) != null)
    {
      int current = ...;// Extract line number
      if (current != last)
      {
        System.out.println();
      }
      // Traitement habituel
      last = current;
    }
    System.out.println();
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

Discussions similaires

  1. Problème d'exécution programme Java
    Par cocorico88 dans le forum Général Java
    Réponses: 3
    Dernier message: 16/11/2009, 09h38
  2. Probléme d'installateur d'un programme java
    Par cdoctora dans le forum Général Java
    Réponses: 9
    Dernier message: 28/01/2009, 22h01
  3. Problème log4j, windows Xp et programme java
    Par fillotte dans le forum Logging
    Réponses: 2
    Dernier message: 13/12/2006, 11h51
  4. problème d'execution programme java
    Par mel_gasy dans le forum EDI et Outils pour Java
    Réponses: 6
    Dernier message: 08/10/2006, 01h29
  5. Problème sur la commande COPY depuis un programme Java
    Par klereth dans le forum PostgreSQL
    Réponses: 10
    Dernier message: 10/02/2006, 14h14

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