1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| import java.util.ArrayList;
public class TraitementsListes {
// Variable de la classe
ArrayList<String> listePourTraitement = new ArrayList<String>();
public TraitementsListes(ArrayList<String> listeServeur, ArrayList<String> listeFichier){
// On compare les 2 listes mais pour cela il faut enlever les commentaires de la
// liste listeFichier. On repère les commentaires en comparant la longueur de la listeFichier
// à celle de listeServeur à l'indice 0.
for(int i=0; i<listeServeur.size(); i++){
for(int ii=0; ii<listeFichier.size(); ii++){
// commentaire = 0 --> pas de commentaire
// commentaire > 0 --> il y a des commentaires
int commentaire = listeFichier.get(ii).length() - listeServeur.get(0).length();
int indexFin = listeFichier.get(ii).length() - commentaire;
if(listeServeur.get(i).equals(listeFichier.get(ii).substring(0, indexFin))){
// Les 2 chaines sont identiques, cad que le fichier lister sur le serveur est déjà
// présent dans le fichier txt. On copie donc la ligne du fichier txt dans la
// liste à traité, et on passe au suivant.
listePourTraitement.add(listeFichier.get(ii));
break;
}
if(ii == listeFichier.size()-1){
// Pas d'occurrence trouvée, on copie donc la ligne du fichierServeur dans la
// liste à traité.
listePourTraitement.add(listeServeur.get(i));
}
}
}
}
public ArrayList<String> getList(){
return listePourTraitement;
}
} |