|
|
|
|
Bonjour, je mets à votre disposition un code java pour supprimer toutes les balises html d'1 fichier passé en parametres pour sauvegarder les données dans un fichier .txt
public void supprimerBalises(String adresse){ // nettoyer le fichier html de toutes ses balises afin de trouver facilement les données
String adresse2="C:\\monfichier.txt";
int flot=0;
try{
FileReader flotLecture = new FileReader(adresse);
FileWriter fw = new FileWriter(adresse2,true);
BufferedWriter output = new BufferedWriter(fw);
flot=flotLecture.read(); //on lit le flot. si flot =-1 fin du fichier
char car=(char)flot;
char lu=(char)flot;
while(flot!=-1){ // TQ pas fin du fichier
if(car=='<') //pour reperer le début balises
{
while(lu!='>'){ //TQ pas à la fin de la balise
flot = flotLecture.read();
lu=(char)flot;
}
flot = flotLecture.read(); //on lit le carcater suivant car ici on était toujours sur le caractère "<"
lu=(char)flot;
car=lu;
}
else{ // si on n'est pas dans une balise
lu=(char)flot;
output.write(lu); //on écrit dans le buffer
flot=flotLecture.read(); //on lit le caracter suivant puis on reboucle si on n'est pas en fin de fichier
car=(char)flot;
}
}// while(flot!=-1)
output.flush(); //on envoie le buffer dans le fichier de destination ici:"C:\\monfichier.txt"
output.close(); //on ferme le buffer et le filereader flotlecture
flotLecture.close();
}catch (IOException e) {
System.out.println(" erreur :" + e.toString());
}
}// supprimerBalises
Bonjour,
<div>Ce qui nous donne l'inéquation <span class="formule">x < 3y+1</span></div>, ta méthode donnera Ce qui nous donne l'inéquation xau lieu de Ce qui nous donne l'inéquation x < 3y+1Je pense que la meilleure solution à ce problème serait plutôt de rechercher les balises existantes, elles ne sont pas si courantes que ça... Mais forcément, du coup, ça marche moins bien sur les fichiers XML. Xavier |