Supprimer les # des copier-coller de cs

Description

Avez vous déjà remarqué que quand on fait un copier coller d'une classe qu'on visionne sur ce site, on récupère des # devant chaque ligne, ce code les enlève.

Il permettra également de donner un exemple d'utilisation d'un explorateur de dossier et d'accès aux fichiers texte

Source / Exemple :


package metier;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.List;

public class SuppressionDiese {

	private String nomFichierLecture;
	private String nomFichierEcriture;

	public SuppressionDiese(String nomL, String nomE){
		nomFichierLecture = nomL;
		nomFichierEcriture = nomE;
		supprimer();
	}

	private void supprimer(){
		List<String> lignes = lireFichier();
		for(int k=0; k<lignes.size(); k++){
			lignes.set(k, lignes.get(k).substring(1, lignes.get(k).length()));
			System.out.println(lignes.get(k));
		}
		ecrireFichier(lignes);
	}

	/**

  • cette fonction va lire le contenu d'un fichier
  • @param nomFichierLecture : nom du fichier en entree
  • @return resultat : liste des lignes
  • /
private List<String> lireFichier(){ BufferedReader fluxEntree=null; String ligneLue; List<String> lignes = new ArrayList<String>(); try{ fluxEntree = new BufferedReader(new FileReader(nomFichierLecture)); ligneLue = fluxEntree.readLine(); while(ligneLue!=null){ lignes.add(ligneLue); ligneLue = fluxEntree.readLine(); } } catch(IOException exc){ exc.printStackTrace(); } try{ fluxEntree.close(); } catch(IOException e){ e.printStackTrace(); } return lignes; } /**
  • Ce procédure écrit dans le fichier les lignes de la liste
  • @param nomFichierLecture : nom du fichier dans lequel écrire
  • @param lignes : liste des lignes à écrire
  • /
private void ecrireFichier(List<String> lignes){ Writer fluxSortie=null; try{ fluxSortie = new PrintWriter(new BufferedWriter(new FileWriter( nomFichierEcriture))); for(int i=0;i<lignes.size()-1;i++){ fluxSortie.write(lignes.get(i)+"\n"); } fluxSortie.write(lignes.get(lignes.size()-1)); } catch(IOException exc){ exc.printStackTrace(); } try{ fluxSortie.close(); } catch(IOException e){ e.printStackTrace(); } } } package ihm; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import metier.SuppressionDiese; public class Fenetre extends JFrame{ private static final long serialVersionUID = 1L; JButton chercher = new JButton("Effectuer le remplacement"); JLabel entete = new JLabel("Localisez le fichier, le remplacement sera effectué automatiquement"); public Fenetre(){ super("Supprimer les #"); setLayout(new GridLayout(2,2)); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); chercher.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { JFileChooser chooser = new JFileChooser(); String url; int returnVal = chooser.showOpenDialog(Fenetre.this); if (returnVal == JFileChooser.APPROVE_OPTION) { url = chooser.getSelectedFile().getPath(); new SuppressionDiese(url, url); JOptionPane.showMessageDialog(Fenetre.this, "Les # ont été supprimés"); } } }); add(entete); add(chercher); setSize(500, 500); setVisible(true); } public static void main(String[] a){ new Fenetre(); } }

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.