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 :

problème de copie d'un fichier


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 34
    Par défaut problème de copie d'un fichier
    Salut à tous

    j'ai le code suivant qui contient deux méthodes une qui copie un fichier dans un autre et une qui enregistre un nouveau fichier .Je veux en fait passer le fichier enregistré comme paramètre d'entrée à la méthode de copie plus particulièrement le paramètre qui identifie le fichier copie. voici ce que me génère l'exécution :java.lang.NullPointerException
    at Fichier.save(Fichier.java:94)
    at Fichier.main(Fichier.java:108)




    Le code de ma classe est le suivant:
    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    import java.awt.TextArea;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.nio.channels.FileChannel;
    import javax.swing.JFileChooser;
     
     
     
    public class Fichier {
         private TextArea textArea;
        String nom_fichier;
     public static boolean copyFile(File source, File dest){
        try{
            // Declaration et ouverture des flux
            java.io.FileInputStream sourceFile = new java.io.FileInputStream(source);
     
            try{
                java.io.FileOutputStream destinationFile = null;
     
                try{
                    destinationFile = new FileOutputStream(dest);
     
                    // Lecture par segment de 0.5Mo
                    byte buffer[] = new byte[512 * 1024];
                    int nbLecture;
     
                    while ((nbLecture = sourceFile.read(buffer)) != -1){
                        destinationFile.write(buffer, 0, nbLecture);
                    }
                } finally {
                    destinationFile.close();
                }
            } finally {
                sourceFile.close();
            }
        } catch (IOException e){
            e.printStackTrace();
            return false; // Erreur
        }
     
        return true; // Résultat OK 
    }
     
      public String  save() throws IOException
        {
     
    String S=new String();
     
        JFileChooser filechoose = new JFileChooser();
    // Créer un JFileChooser
        File dir =new File("./");
       filechoose.setCurrentDirectory(dir);
     
       // Le répertoire source du JFileChooser est le répertoire dâ€Toù est lancé notre programme
       String approve = new String("Enregistrer");
    // Le bouton pour valider lâ€Tenregistrement portera la mention ENREGSITRER
     
       int resultatEnregistrer = filechoose.showDialog(filechoose,approve); // Pour afficher le JFileChooserâ€|
       if (resultatEnregistrer == JFileChooser.APPROVE_OPTION)
     
           // Si lâ€Tutilisateur cliqu sur le bouton ENREGSITRER
       {
           nom_fichier = new String(filechoose.getSelectedFile().toString());
     
     
    // Récupérer le nom du fichier quâ€Til a spécifié
       if (nom_fichier.endsWith(".txt"))
        {System.out.println(" c bon");}
     
        else
        {nom_fichier  = nom_fichier.concat(".txt");}
     
     
        FileWriter lu = new FileWriter(nom_fichier);
     
    // Créer un objet java.io.FileWriter avec comme argument le mon du fichier dans lequel enregsitrer
     
       BufferedWriter out = new BufferedWriter(lu);
    // Mettre le flux en tampon (en cache)
     
     
     
     
     
       out.close(); // Fermer le flux (câ€Test toujours mieux de le fermer explicitement)
     
       S="".concat(dir.getPath()).concat("/").concat(textArea.getText()).concat("");
     
     
     
     
    } return S;
        }
     
       public static void main(String argv[]) throws IOException
    {
        Fichier F=new Fichier();
     
     
      String dest=new String();
      dest=F.save();
     
      String path="C:/file";
      File source=new File(path);
     
      File desti=new File(dest);
     
       boolean copy;
       copy= F.copyFile(source,desti);
     
    }
    }

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 75
    Par défaut
    ton problème viens de là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    textArea.getText()
    Tu tente d'utiliser la variable textArea alors qu'elle n'a pas été initialisée.

    ++@

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 34
    Par défaut
    Merci beaucoup
    j'espère que je t'aidera dans le futur

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème de copie d'un fichier distant
    Par katwes dans le forum C#
    Réponses: 7
    Dernier message: 28/08/2008, 11h27
  2. Problème de copie d'un fichier
    Par fanouk dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/06/2008, 15h39
  3. [Probléme] Script copie dans un fichier
    Par maloute80 dans le forum Langage
    Réponses: 23
    Dernier message: 29/11/2007, 15h52
  4. [Système] problème de copie de fichier entre 2 serveurs
    Par HOUDEBINE dans le forum Langage
    Réponses: 2
    Dernier message: 22/05/2006, 16h13
  5. problème de copie de fichier...
    Par Pe04 dans le forum Langage
    Réponses: 5
    Dernier message: 22/03/2006, 10h17

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