begin process at 2012 02 15 10:26:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Débutant(e)

 > 

detecter separateur ; dans un fichier TXT


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

detecter separateur ; dans un fichier TXT

jeudi 12 février 2009 à 11:14:40 | detecter separateur ; dans un fichier TXT

tomski

Bonjour!


Jaimerais lire un fichier .TXT en java presenté sous la forme

TOTO
prob1;val1
prob2;val2
prob3;val3

"prob" est un String, "val "un int.

Ce que je ne sais pas faire cest:
   Stocker la String TOTO dans une String speciale (ca ok je gere), mais comment faire pour le reste du fichier?
   je voudrais:
   detecter le separateur ;
   Stocker la String prob1, prob2... dans larray de String qui va bien, et l'int dans larray de int
   et trouver la valeur max des int


Si quelqu un peut maider ce serait cool.


(_.:~:._)
jeudi 12 février 2009 à 12:24:58 | Re : detecter separateur ; dans un fichier TXT

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Salut,

Tu as plusieurs solutions à ton problèmes : soit décomposer ta chaîne "à la main" avec des splits, indexof, etc., soit utiliser des expressions régulières, soit utiliser des Patterns/Matchers.

Je te conseille de passer par la troisième solution qui est plus "java" que les 2 autres avec une approche objet :
http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html
______________________________________
DarK Sidious
jeudi 12 février 2009 à 16:09:55 | Re : detecter separateur ; dans un fichier TXT

sheorogath

Membre Club Administrateur CodeS-SourceS
Ya la classe Scanner aussi dont  la methode next peut prendre un pattern :) (java >= 1.5)

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
vendredi 13 février 2009 à 09:09:27 | Re : detecter separateur ; dans un fichier TXT

tomski

salut !


jsuis aller voir le regex, mais bon jsuis pas familiere avec....

jaimerais :
lire la premiere ligne prob1 ; val1 
detecter le ";"
puis lire la chaine entre le debut de la ligne et le ";" et la chaine après le ";". Stocker la premiere chaine dans un array de string, et la chaine apres le ";" la convertir en int et stocker dans un array de int

et ainsi de suite jusqua la fin de mon tableau....

Jvais me creuser les meninges, mais si quelquun a une idee ca minteresse

(_.:->
vendredi 13 février 2009 à 09:12:54 | Re : detecter separateur ; dans un fichier TXT

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

Si c'est aussi simple, te prends pas la tête : utilise un String.split(";");
______________________________________
DarK Sidious
vendredi 13 février 2009 à 10:23:03 | Re : detecter separateur ; dans un fichier TXT

tomski

Effectivement !!!
Des fois on se prend la tete pour rien...

Merci :)

(_.:~:._)
vendredi 13 février 2009 à 13:40:07 | Re : detecter separateur ; dans un fichier TXT

tomski

Heu,  si quelquun veut bien encore maider...
Ce que jessaye de faire: jai un fichier texte en entrée qui sappelle input.txt et qui contient des valeurs comme ceci:
Etiquette;50
Papier;20
..; ..

Je cherche a ranger Etiquette et Papier et n... dans un Array de String.
et les valeurs dans un array de int

Pour cela, grace au tip de DarkSidious, je cherche le ";" dans ma string via un split, ensuite de prends les substring avant et apres le ";".

Le probleme doit etre certainement au niveau de ma boucle for ou while.
Si quelquun peut maider a decoder ce ki  ne va pas dans mon code... ce serait top mega cool.
Ensuite une fois ke mes arrays seront bien remplis, je piocherai dedans pour creer des JLabels avec pour nom/valeur le contenu des arrays a lindex i. (Jessaye de faire un graphe)

Quand jexecute le code suivant, jobtiens

C:\Program Files\Java\jdk1.6.0_12\bin>java GRAF
Etiquette;50
Etiquette
50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
java.lang.ArrayIndexOutOfBoundsException: 10


Voici le code


try{

BufferedReader br=new BufferedReader(new FileReader("input.txt"));
try{
   String ligne;
//creation arrays
String[] arrayString;
int[] arrayint;
arrayString = new String[10];
arrayint = new int[10];

   while ((ligne=br.readLine())!=null ){
                           
System.out.println(ligne);
ligne.split(";");
int idchar = ligne.indexOf(";");

String s1= ligne.substring(0,idchar);
        System.out.println(s1);
        String s2= ligne.substring(idchar+1,ligne.length());
        System.out.println(s2);
for(int i=0; i<ligne.length(); i++){
        arrayString[i] = s1;
        System.out.println("Array1= "+arrayString[i]);
        arrayint[i] = Integer.parseInt(s2);
        System.out.println("Array2= "+arrayint[i]);

}//end for
    System.out.println(ligne);
    chaine+=ligne+"\n";
   }
                        }finally{
       br.close();
                        }
  }catch (Exception e){
   System.out.println(e.toString());
  }

           /*FIN LECTURE FICHIER TEXTE*/

(_.:~:._)

vendredi 13 février 2009 à 14:02:41 | Re : detecter separateur ; dans un fichier TXT

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

Oulà là, tu te complique bien la vie pour rien !

Pas testé, mais ca devrait marcher :

Heu,  si quelquun veut bien encore maider...
Ce que jessaye de faire: jai un fichier texte en entrée qui sappelle input.txt et qui contient des valeurs comme ceci:
Etiquette;50
Papier;20
..; ..

Je cherche a ranger Etiquette et Papier et n... dans un Array de String.
et les valeurs dans un array de int

Pour cela, grace au tip de DarkSidious, je cherche le ";" dans ma string via un split, ensuite de prends les substring avant et apres le ";".

Le probleme doit etre certainement au niveau de ma boucle for ou while.
Si quelquun peut maider a decoder ce ki  ne va pas dans mon code... ce serait top mega cool.
Ensuite une fois ke mes arrays seront bien remplis, je piocherai dedans pour creer des JLabels avec pour nom/valeur le contenu des arrays a lindex i. (Jessaye de faire un graphe)

Quand jexecute le code suivant, jobtiens

C:\Program Files\Java\jdk1.6.0_12\bin>java GRAF
Etiquette;50
Etiquette
50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
Array1= Etiquette
Array2= 50
java.lang.ArrayIndexOutOfBoundsException: 10


Voici le code


try{

BufferedReader br=new BufferedReader(new FileReader("input.txt"));
try{
   String ligne;
//creation arrays
String[] arrayString;
int[] arrayint;

int indexLigne = 0;

arrayString = new String[10]; // a redimensionner avec le nombre de ligne exact !
arrayint = new int[10];

   while ((ligne=br.readLine())!=null ){
String[] elements = ligne.split(";");
arrayString[indexLigne] = elements[0];

arrayint[indexLigne] = Integer.parseInt(elements[1]);

indexLigne++;

   }
                        }finally{
       br.close();
                        }
  }catch (Exception e){
   System.out.println(e.toString());
  }


______________________________________
DarK Sidious
lundi 16 février 2009 à 15:27:54 | Re : detecter separateur ; dans un fichier TXT

tomski

Merciiiiiiiiiiii !!

(_.:~:._)
mercredi 22 juillet 2009 à 13:50:01 | Re : detecter separateur ; dans un fichier TXT

Wiska

bonjour, quand je teste ton source (darksidious) j'obtiens une exception du type:
java.lang.NumberFormatException: For input string: "T"

mon fichier ressemble à ceci:
Toto|-1.2
Tata|-2
Titi|-1
Tutu|-3
Tete|-2.5
Tyty|-5

voici le source:

public void ChargerFichier(String file)
{
try
{
BufferedReader br = new BufferedReader(new FileReader(file));
try
{
String ligne;
//creation arrays
String[] arrayString;
int[] arrayint;
int indexLigne = 0;

arrayString = new String[10]; // a redimensionner avec le nombre de ligne exact !
arrayint = new int[10];

while ((ligne=br.readLine())!=null )
{
String[] elements = ligne.split("|");
arrayString[indexLigne] = elements[0];
arrayint[indexLigne] = Integer.parseInt(elements[1]);
indexLigne++;
}
}
finally
{
br.close();
}
}
catch (Exception e)
{
System.out.println(e.toString());
}
}

et l'appel de la fonction:

CFichierTexte file = new CFichierTexte();
file.ChargerFichier("C:\\Documents and Settings\\phtorka\\Bureau" +
"\\GenerationGrapheCalcul\\GenerationGrapheCalcul\\Graphe.txt");

Si quelqu'un peut m'aider.... d'avance merci.



Cette discussion est classée dans : fichier, string, txt, detecter, separateur


Répondre à ce message

Sujets en rapport avec ce message

Rechercher un mot dans un fichier txt [ par daviddubois ] Bonjour tout le monde,J'essaie de voir si une partie de phrase se trouve dans un fichier txt, si tel est le cas, j'incrémente i de 1.ça fonctionne trè SCAN d'un fichier .txt a l'aide de Scanner en JAVA [ par adilfsrum5a ] Bonsoir, je cherche à réaliser une méthode qui doit récupérer des informations contenues dans un fichier .txt. je veux trouver comment récuperer pl chercher une sous chaine dans un fichier .txt [ par elhadi213 ] salut je doit programmer une bouton qui doit extraire les x premier caractéres d'un mot entré arab(proclitiques possibles et x décrimente quand je ne Fichier Java [ par CicinhoRaul ] Salut à tous et à toutes, j'ai un gros problème :  j'ai un formulaire à faire en java avec des boutons radios, et je dois écrire tout ce ke j'entre da créer un fichier texte [ par lovelacelana ] Bsr!!je souhaiterai créer dynamiquement un fichier texte. et je ne sais comment m'y prendre. En fait je souhaiterai prendre les données d'un tableau p coder une Image [ par aliahmad ] salutpublic static void decoderImage(String image,String fichier) throws Exception {    byte[] buffer = Base64.decode(image);    writeFile(buffer,fich Classer fichier .txt dans tableau java [ par Rasta rockeuse ] Bonjour à tous ! Comme indiqué, je me lance dans un programme sensé prendre les données présentes dans un fichier texte et les classer dans un tablea problème avec JOptionPane [ par zut69 ] Bonsoir,J'ai un souci avec un bouton parcourir. Dans l'applet viewer pas de soucis, il s'affiche et tout s'exécute correctement mais par contre quand insertion des donnés apartir de fichier + java + oracle [ par emiliebella ] Bonjour,J'ai un probleme et je veux bien que qqn m'aide.J' essai d'inserer des données dans une bd oracle 8i à partir d'un fichier.txt; ma table conti éviter d'écraser dans un fichier .txt [ par chat11 ] Bonsoir ! J'ai ce code : <p class="MsoNormal" style="MARGIN:


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,371 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales