Supprimer un repertoire non vide [Résolu]

asetti 61 Messages postés jeudi 22 juillet 2004Date d'inscription 15 mai 2010 Dernière intervention - 13 août 2004 à 09:21 - Dernière réponse : indiana_jules 750 Messages postés mardi 9 mars 2004Date d'inscription 23 décembre 2008 Dernière intervention
- 13 août 2004 à 14:21
Slt,
je dois supprimer un répertoire.
J'utilise donc le code ci-dessous qui le supprime que si le repertoire est vide.
comment faire pour pouvoir supprimer tout les fichiers du repertoire ou pour en obtenir une liste des fichiers existant
svp répondez moi

String rep="C:/nn";

if(new File(rep).exists()){
boolean suppr=new File(rep).delete() ;
}
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
indiana_jules 750 Messages postés mardi 9 mars 2004Date d'inscription 23 décembre 2008 Dernière intervention - 13 août 2004 à 09:42
3
Merci
Slut

si tu veux savoir le contenu du répertoire, tu peux soit utiliser
list() qui va te renvoyer un String[] contenant le nom des fichiers, ou tu peux utiliser listFiles() qui va te renvoyer un File[]
Du coup, si ton répertoire ne contient que des fichiers, tu peux faire un truc de ce style :
...
File[] files = rep.listFiles();

for(int i = 0; i < files.length(); i++) {
files[i].delete();
}
...


voilà

[Tout le monde a des idées : la preuve, c'est qu'il y en a de mauvaises]

Merci indiana_jules 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de indiana_jules
Meilleure réponse
asetti 61 Messages postés jeudi 22 juillet 2004Date d'inscription 15 mai 2010 Dernière intervention - 13 août 2004 à 12:21
3
Merci
Ok ton code ma super bien aider
voilà mon code qui fonctionne (ça peut aider quelqu'un) :
il supprime d'abord le contenu des repertoires puis copie des fichiers

package projetinstal;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;

public class Instal
extends JFrame {
JPanel contentPane;
JLabel jLabel1 = new JLabel();
JTextPane jTextPane1 = new JTextPane();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();

//Construire le cadre
public Instal() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch (Exception e) {
e.printStackTrace();
}
}

//Initialiser le composant
private void jbInit() throws Exception {
contentPane = (JPanel)this.getContentPane();
jLabel1.setFont(new java.awt.Font("Dialog", 1, 18));
jLabel1.setForeground(Color.blue);
jLabel1.setHorizontalAlignment(SwingConstants.CENTER);
jLabel1.setText("INSTALLATION GDE");
jLabel1.setBounds(new Rectangle(0, 5, 400, 24));
contentPane.setLayout(null);
this.setSize(new Dimension(400, 300));
this.setTitle("Titre du cadre");
jTextPane1.setFont(new java.awt.Font("Arial", 0, 12));
jTextPane1.setOpaque(false);
jTextPane1.setCaretColor(Color.white);
jTextPane1.setEditable(false);
jTextPane1.setText("Bonjour,\n\nLe logiciel GDE va être installé sur votre ordinateur.\nVous pourrez lancer le programme ou le désinstaller à partir du menu 'démarrer/Tous les programmes/GDE'\nSi ces raccourcis sont supprimés, vous pourrez les retrouvés dans 'C:/Program Files/GDE'.\n\nCliquez sur le bouton 'instal' pour installer le programme ou sur 'Annuler' pour quitter sans installer.\n");
jTextPane1.setBounds(new Rectangle(26, 36, 345, 177));
contentPane.setOpaque(true);

jButton1.setBounds(new Rectangle(65, 211, 90, 30));
jButton1.setText("Installer");
jButton1.addActionListener(new Instal_jButton1_actionAdapter(this));
jButton2.setBounds(new Rectangle(215, 211, 90, 30));
jButton2.setText("Annuler");
jButton2.addActionListener(new Instal_jButton2_actionAdapter(this));
contentPane.add(jLabel1, null);
contentPane.add(jTextPane1, null);
contentPane.add(jButton1, null);
contentPane.add(jButton2, null);

}

//Redéfini, ainsi nous pouvons sortir quand la fenêtre est fermée
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}

void jButton1_actionPerformed(ActionEvent e) {
boolean erreur = false;
byte[] tampon = new byte[4096];
FileOutputStream ecriture;
FileInputStream lecture;
String rep = "C:/Program Files/GDE/";
String rep2 = "D:/documents and Settings/All Users/Start Menu/Programs/GDE/";
String[] tabNom = new String[2];

//supprimer le répertoire programme files et le restaurer
if (new File(rep).exists()) {
File[] files = (new File(rep)).listFiles();
for (int i = 0; i < files.length; i++) {
files[i].delete();
}
}
else {
new File(rep).mkdir();
}

//supprimer le répertoire alluser/barre taches files et le restaurer
if (new File(rep2).exists()) {
File[] files = (new File(rep2)).listFiles();
for (int i = 0; i < files.length; i++) {
files[i].delete();
}
}
else {
new File(rep2).mkdir();
}
//copie du programme et du désinstalleur dans program Files
tabNom[0] = "GDE.exe";
tabNom[1] = "UninstallGDE.exe";
for (int num = 0; num < 2; num++) {
try {
lecture = new FileInputStream("./" + tabNom[num]);
ecriture = new FileOutputStream(rep + tabNom[num]);
int lu = lecture.read(tampon);
while (lu > 0) {
ecriture.write(tampon, 0, lu);
lu = lecture.read(tampon);
}
lecture.close();
ecriture.close();
}
catch (IOException ee) {
ee.printStackTrace();
erreur = true;
}
}

if (erreur == true) {
JOptionPane.showMessageDialog(null, "Un problème à été rencontré lors de la copie des fichier!!!/n/n Veuillez relancer l'installation",
"Erreur de copie des éléments",
JOptionPane.ERROR_MESSAGE);
}
//Création des raccourcis

}

void jButton2_actionPerformed(ActionEvent e) {
int rep = JOptionPane.showConfirmDialog(null,
"Voulez-vous quitter sans installer GDE",
"Quitter l'installation de GDE",
JOptionPane.YES_NO_OPTION);
if (rep == JOptionPane.YES_OPTION) {
System.exit(0);
}
}
}

class Instal_jButton1_actionAdapter
implements java.awt.event.ActionListener {
Instal adaptee;

Instal_jButton1_actionAdapter(Instal adaptee) {
this.adaptee = adaptee;
}

public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}

class Instal_jButton2_actionAdapter
implements java.awt.event.ActionListener {
Instal adaptee;

Instal_jButton2_actionAdapter(Instal adaptee) {
this.adaptee = adaptee;
}

public void actionPerformed(ActionEvent e) {
adaptee.jButton2_actionPerformed(e);
}
}

Merci asetti 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de asetti
indiana_jules 750 Messages postés mardi 9 mars 2004Date d'inscription 23 décembre 2008 Dernière intervention - 13 août 2004 à 14:21
0
Merci
Oki, c'est gentil 8-)

[Tout le monde a des idées : la preuve, c'est qu'il y en a de mauvaises]
Commenter la réponse de indiana_jules

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.