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

Entrée/Sortie Java Discussion :

ecrire dans un fichier


Sujet :

Entrée/Sortie Java

  1. #1
    Membre régulier Avatar de nypahe
    Inscrit en
    Novembre 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 174
    Points : 85
    Points
    85
    Par défaut ecrire dans un fichier
    Bonjour,
    J'ai du mal a faire passé un tableau en paramètre, et a ecrire le contenu dans un fichier.doc

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    import java.io.*;
     
    public class writer {
     
    	public static void main(final String[] args) {
            int j=1, n=5;
            int tab[] = new int[n];
     
            final String chemin = "C:/tfe/nomFichier6.doc";
           final File fichier =new File(chemin); 
           try {
               // Creation du fichier
               fichier .createNewFile();
               // creation d'un writer (un écrivain)
               final FileWriter writer = new FileWriter(fichier);
     
               try {
                   writer.write("Les coaltions possibles\n");
     
                  for(int i=0; i<tab.lenght;i++){
                   tab[i]= j;
                   writer.write(tab);// je ne comprends pas pkoi, il n 'ecris pas dans
       // le fichier creer            
     
                    j++;             
     
                   }                            
     
               } finally {
                   //  on ferme le fichier
                   writer.close();
               }
           } catch (Exception e) {
               System.out.println("Impossible de creer le fichier");
     
     
           }
    }
    }

  2. #2
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    Salut !
    Est-ce que ton répertoire C:\tfe existe bien ?

    Sinon ceci devrait fonctionner :
    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
    28
    29
    30
    31
    32
    33
    34
    35
     
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
     
    public class Writer {
     
    	public static void main(final String[] args) {
    		int j=1, n=5;
    		int tab[] = new int[n];
     
    		String chemin = "C:"+File.separator + "nomFichier6.doc";
    		File fichier =new File(chemin); 
    		try {			
    			FileWriter writer = new FileWriter(fichier);
    			BufferedWriter output = new BufferedWriter(writer); 
     
    			try {
    				output.write("Les coaltions possibles\n");
     
    				for(int i=0; i<tab.length;i++){
    					tab[i]= j;
    					output.write(tab[i]);        
    					j++;             
    				}                            
    			} finally {
    				output.close();
    				writer.close();
    			}
    		} catch (Exception e) {
    			System.out.println("Impossible de creer le fichier");
    			e.printStackTrace();
    		}
    	}
    }
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  3. #3
    Membre régulier Avatar de nypahe
    Inscrit en
    Novembre 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 174
    Points : 85
    Points
    85
    Par défaut
    Le repertoire existe,
    le string s'ecrit sans probleme mais le tableau de ne fait pas.

    Citation Envoyé par jojodu31 Voir le message
    Salut !
    Est-ce que ton répertoire C:\tfe existe bien ?

    Sinon ceci devrait fonctionner :
    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
    28
    29
    30
    31
    32
    33
    34
    35
     
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
     
    public class Writer {
     
    	public static void main(final String[] args) {
    		int j=1, n=5;
    		int tab[] = new int[n];
     
    		String chemin = "C:"+File.separator + "nomFichier6.doc";
    		File fichier =new File(chemin); 
    		try {			
    			FileWriter writer = new FileWriter(fichier);
    			BufferedWriter output = new BufferedWriter(writer); 
     
    			try {
    				output.write("Les coaltions possibles\n");
     
    				for(int i=0; i<tab.length;i++){
    					tab[i]= j;
    					output.write(tab[i]);        
    					j++;             
    				}                            
    			} finally {
    				output.close();
    				writer.close();
    			}
    		} catch (Exception e) {
    			System.out.println("Impossible de creer le fichier");
    			e.printStackTrace();
    		}
    	}
    }

  4. #4
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    tu n'as pas testé mon code ?
    tu avais une erreur, tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    writer.write(tab);
    au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    writer.write(tab[i]);


    de plus tu avais mal écris length, mais c'est peut être une erreur de recopie:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for(int i=0; i<tab.length;i++)
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  5. #5
    Membre régulier Avatar de nypahe
    Inscrit en
    Novembre 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 174
    Points : 85
    Points
    85
    Par défaut
    Ton code ecrit sur un fichier les string,mais les elts du tableau ne sont pas marqué mais remplacé par des petits carrés.

  6. #6
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    oups j'ai écris ça un peu vite dsl ^^

    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
    28
    29
    30
    31
    32
     
    public class Write {
     
    	public static void main(final String[] args) {
    		int j=1, n=5;
    		int tab[] = new int[n];
     
    		String chemin = "C:"+File.separator + "nomFichier6.txt";
    		File fichier =new File(chemin); 
    		try {			
    			FileWriter writer = new FileWriter(fichier);
    			BufferedWriter output = new BufferedWriter(writer); 
     
    			try {
    				output.write("Les coaltions possibles");
    				output.newLine();
     
    				for(int i=0; i<tab.length;i++){
    					tab[i]= j;
    					output.write(String.valueOf(tab[i]));        
    					j++;             
    				}                            
    			} finally {
    				output.close();
    				writer.close();
    			}
    		} catch (Exception e) {
    			System.out.println("Impossible de creer le fichier");
    			e.printStackTrace();
    		}
    	}
    }
    le write prend le code ASCII quand il est utilisé avec un int, et non pas l'int lui même
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  7. #7
    Membre régulier Avatar de nypahe
    Inscrit en
    Novembre 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 174
    Points : 85
    Points
    85
    Par défaut
    Merci mon grand, genial ça marche.
    Il fallait, convertir l'int en String? pour être sur de l'ecrire?
    et File.separator: il fait koi, j'en profite pour apprendre

  8. #8
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    de rien

    pour le coup du write (Javadoc):
    public void write(int c)
    throws IOException

    Write a single character.

    Overrides:
    write in class Writer

    Parameters:
    c - int specifying a character to be written.
    /!\ write écrit le caractère correspondant à cet entier !


    pour le File.separator :
    les séparateurs sont '/' sous unix et '\\' sous windows, et avec ceci tu ne t'en préoccupe pas et tu gagne en portabilité

    voilou
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

Discussions similaires

  1. Ecrire \" dans un fichier
    Par photorelief dans le forum Langage
    Réponses: 2
    Dernier message: 14/09/2005, 15h56
  2. [JAR] Lire et Ecrire dans un fichier contenu dans un jar
    Par lipao17 dans le forum Général Java
    Réponses: 5
    Dernier message: 02/05/2005, 12h01
  3. Ecrire dans un fichier
    Par gibet_b dans le forum Linux
    Réponses: 5
    Dernier message: 25/04/2005, 20h11
  4. Ecrire dans un fichier grace à un trigger ?
    Par zigoo dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 29/10/2004, 20h03
  5. Ecrire dans un fichier sans supprimer le reste
    Par koan_sabian dans le forum Linux
    Réponses: 4
    Dernier message: 20/02/2003, 15h44

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