Création d'un repertoire en java

Fermé
alffouss Messages postés 125 Date d'inscription mercredi 15 octobre 2008 Statut Membre Dernière intervention 20 novembre 2024 - 23 juil. 2009 à 11:21
alffouss Messages postés 125 Date d'inscription mercredi 15 octobre 2008 Statut Membre Dernière intervention 20 novembre 2024 - 23 juil. 2009 à 17:22
Bonjour,
je veux creer un repertoire qui à pour nom 10.0.0.1
Quand j'execute mon code, j'obtiens le message suivant: le repertoire n'est pas crrer.

Le but est de creer ce repertoire dans mes documents

voici mon code:
****************************************************
import java.io.*;
class Rip {
// attribut
private static File file;
// constructeur
public Rip(String string) {
file = new File(string);
}
// méthode
static public void File(String Ip){
new File("10.0.0.1").mkdirs();
if(file.exists()){
System.out.println ("le fichier existe maintenant");
}else{
new File("10.0.0.1").mkdirs();
}

}


public static void main (String[]args){
Rip f1;
f1 = new Rip("52");
File("10.0.0.1");
if(file.exists()){
System.out.println ("Le dossier est creer");
} else{
System.out.println(" le fichier n'a pas été créé");
}
}
}
***************************************************************

meci d'avance pour votre aide
A voir également:

2 réponses

allfouss, Bonjour

Fais attention, ton programme est très brouillon, et c'est peut-être pour ça que tu t'y perd.
Il "marche" si tu remplace seulement la ligne
f1 = new Rip("52");
par celle-ci :
f1 = new Rip("10.0.0.1");
En effet, la variable file n'est affectée que lors de l'appel au constructeur.
Donc quand tu fais if (file.exists()) en fait tu testes si le fichier/répertoire "52" existe et pas le fichier "10.0.0.1".
Par contre, le répertoire est bien créé, même avec ta ligne erronée, car elle ne concerne que le test.
Mes conseils
1) ne pas répéter des chaînes de caractères
Si tu as une constante dans un programme, comme "10.0.0.1", met la à un seul endroit dans une variable
comme ceci :
public static final String ADRESSE_IP_DEFAUT = "10.0.0.1";
2) ne pas appeler une méthode comme le nom d'une classe
Remplace la méthode File() par la méthode creerFile(String IP)
3) Ne pas répeter la même instruction, comme new File("10.0.0.1").mkdirs() plusieurs endroits dans le code, mas la mettre ne seule fois dans une méthode (ici le mieux me semble creerFile()
4)Si tu indique qu'une m"thode a un paraètre, utilise le :
ta méthode File(String IP) n'utlise en fait pas le paramètre IP, ce qui ajoute à la confusion.
amicalement votre bon courage !
0
alffouss Messages postés 125 Date d'inscription mercredi 15 octobre 2008 Statut Membre Dernière intervention 20 novembre 2024 5
23 juil. 2009 à 17:22
merci BCQ
ça marche enfin
0