Cd archiver

Description

ce programme est un editeur de liste de CDs.
certaines personnes ont ennormement de CD chez eux(jeux, divx, etc..) et il ont ont tellement qu'il ont oublis certain...
alors j'ai crée ce program qui vous permet de gerrer votre bibliotheque de CD et d'en crée une liste...
(un fichier text .TXT)
il y est aussi sur mon site http://www.domainederaouf.com ainssi que d'autre projets de mes oeuvres.

Source / Exemple :


/* Amimi Raouf */
/** la class Editeur **/

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

public class Editeur extends JFrame implements ActionListener{
	
	
	private List cathegorieList, titreList;
	private TextField titreTF, cathegorieTF;
	private Button bouton_ajouter, bouton_supprimer, bouton_creer, bouton_retour, bouton_supprimer_cathegorie;
	private JLabel titreLabel, cathegorieLabel, ErreurLabel;
	private Container contenu;
	private BufferedWriter ecriture;
	private BufferedReader lecture;
	private File fichier;
	
	/** constructeur **/
	public Editeur(){
		super("CD Archiver: Editeur d'archive");
		
		// initialisation //	
		fichier = new File("Archives");
			
		cathegorieList = new List();
			String[] liste = fichier.list();
			Outil.trier(liste);
			afficher(liste, cathegorieList);
			cathegorieList.addActionListener(this);
		
		titreList	= new List();
		
		titreTF = new TextField();
	
		cathegorieTF = new TextField();
		
		bouton_ajouter = new Button("Ajouter");
			bouton_ajouter.addActionListener(this);
			
		bouton_creer = new Button("<<<  Ajouter la cathégorie");
			bouton_creer.addActionListener(this);
			
		bouton_retour = new Button("Retour au menu principal");
			bouton_retour.addActionListener(this);
		
		bouton_supprimer = new Button("Supprimer");
			bouton_supprimer.addActionListener(this);
			
		bouton_supprimer_cathegorie = new Button(">>>  Supprimer la cathégorie");
			bouton_supprimer_cathegorie.addActionListener(this);
			
		titreLabel = new JLabel("Titre du CD: ");
		
		cathegorieLabel = new JLabel("Nouvelle cathégorie: ");
		
		ErreurLabel = new JLabel("<!>:");
		
		contenu = getContentPane();
		
		fichier = new File("Archive");
		
		try{
			ecriture = null;
		
			lecture = null;
		}
		catch(Exception e){}
		
		// Repartition des Composants //
		Panel donneePanel = new Panel();
			donneePanel.setLayout(new GridLayout(8,1,10,10));
			donneePanel.setSize(400, 460);
			donneePanel.add(titreLabel);
			donneePanel.add(titreTF);
			donneePanel.add(bouton_ajouter);
			donneePanel.add(bouton_supprimer);
			donneePanel.add(cathegorieLabel);
			donneePanel.add(cathegorieTF);
			donneePanel.add(bouton_creer);
			donneePanel.add(bouton_supprimer_cathegorie);
			
		
		Panel boutonPanel = new Panel();
			boutonPanel.setLayout(new BorderLayout(10,10));
			boutonPanel.add(bouton_retour,"South");
			boutonPanel.add(ErreurLabel,"North");
		
		Panel cathegoriePanel = new Panel();
			cathegoriePanel.setLayout(new BorderLayout(0,5));
			cathegoriePanel.add(new JLabel("Cathégories: ", JLabel.LEFT), "North");
			cathegoriePanel.add(cathegorieList, "Center");
			
		Panel titrePanel = new Panel();
			titrePanel.setLayout(new BorderLayout(0,5));
			titrePanel.add(new JLabel("Titres: ", JLabel.LEFT), "North");
			titrePanel.add(titreList, "Center");
					
		contenu.setLayout(new BorderLayout(10,50));
		contenu.add(new JLabel("Appuyer sur ajouter pour ajouter le titre du CD dans la cathégorie selèctionnée.",JLabel.CENTER), "North");
		contenu.add(cathegoriePanel, "West");
		contenu.add(titrePanel, "Center");
		contenu.add(donneePanel, "East");
		contenu.add(boutonPanel, "South");
		
		// caracteristiques de la fenetre //
		setSize(900, 475);
		setLocation(200, 200);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setResizable(true);
		setIconImage(Toolkit.getDefaultToolkit().getImage("CDA.ICO"));
		show();
	}
	
	/** Action Listener **/
	public void actionPerformed(ActionEvent event){
		String s = event.getActionCommand();
		ErreurLabel.setText("<!>:");
		
		if(s.equals("Retour au menu principal")){// le bouton_retour
			new MenuPrincipal();
			hide();
		}
		else{
			if(s.equals("<<<  Ajouter la cathégorie")){// le bouton_creer
				try{
					String texte = cathegorieTF.getText().toUpperCase();
					if(!texte.equals("")){
						cathegorieList.add(texte);
						new BufferedWriter(new FileWriter(new File("Archives/"+texte+".archive"))).close();
						cathegorieTF.setText("");
					}
					else{
						int a = 3/0;
					}
				}
				catch(Exception error){
					ErreurLabel.setText("<!>: Entrer le nom de la cathégorie à ajouter !!");
				};
			}
			else{
				if(s.equals(">>>  Supprimer la cathégorie")){// le bouton_supprimer
					try{
						String selection = cathegorieList.getSelectedItem();
						cathegorieList.remove(selection);

						titreList.removeAll();
						fichier = new File("Archives/"+selection+".archive");
						fichier.delete();
					}
					catch(Exception error){
						ErreurLabel.setText("<!>: Selectionnez la cathégorie à éffacer !!");
					};
				}
				else{
					if(s.equals("Ajouter")){// le bouton_ajouter
						try{
							String titre = Outil.reecrire(titreTF.getText());
							if(titre.equals("")){ int a = 3/0;}
							
							fichier = new File("Archives/"+cathegorieList.getSelectedItem()+".archive");
							ecriture = new BufferedWriter(new FileWriter(fichier));
							
							titreList.add(titre);
							
							String[] liste = titreList.getItems();
							Outil.trier(liste);
							
							for(int n = 0; n < liste.length; n++){
								ecriture.write(liste[n]);
								ecriture.newLine();
							}
							
							ecriture.close();
							
							titreTF.setText("");
						}
						catch(Exception erreur){
							ErreurLabel.setText("<!>: Entrez le titre du cd et selectionnez une cathégorie !!!");
						}							
					}
					else{
						if(s.equals("Supprimer")){// le bouton_supprimer
							try{
								String titre = titreList.getSelectedItem();
								System.out.println("\n\n le titre a effacer : "+titre);
								titreList.remove(titre);
								
								String[] donnees = titreList.getItems();
								
								fichier = new File("Archives/"+cathegorieList.getSelectedItem()+".archive");
								
								ecriture = new BufferedWriter(new FileWriter(fichier));
								
								for(int index = 0; index < donnees.length; index++){
									ecriture.write(donnees[index]);
									ecriture.newLine();
								}
								
								ecriture.close();
							}
							catch(Exception erreur){
								ErreurLabel.setText("<!>: Selectionnez le titre à supprimer !!!");
							}							
						}
						else{// cliquez deux fois sur un element de la liste
							try{
								titreList.removeAll();
								
								fichier = new File("Archives/"+s+".archive");
								lecture = new BufferedReader(new FileReader(fichier));
								String ligne = "";
								
								while(true){
									ligne = lecture.readLine();
									if(ligne != null) titreList.add(ligne);
									else break;
								}
								
								lecture.close();
							}
							catch(Exception erreur){
								System.exit(1);
							}
						}
					}
				}
			}
		}
	}
	
	/** La fonction afficher(list) **/
	public static void afficher(String[] tab, List liste){
		liste.removeAll();
		for(int i = 0; i < tab.length; i++){
			if(tab[i].endsWith(".archive")) liste.add(tab[i].substring(0, tab[i].length() - 8));
			//else liste.add(tab[i]);
		}
	}				
}

Conclusion :


le code si-dessus et celui de la fenetre que vous voyer sur la capture d'ecran du programme ...

Codes Sources

A voir également

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.