Comparer des fichier text c#

Résolu
imsse Messages postés 37 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 7 avril 2008 - 29 juin 2007 à 16:12
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011 - 4 juil. 2007 à 13:35
Bonjour,
dans le cadre d'une application web jai besoin d'historiser mes fichiers et de comparer le contenu de ces fichier différents . Ce sont des fichiers text avec des chaine de caractère. L'objectif de la comparasion et de voir quelle sont les diférenc et de pouvoir les identifier. Il est possible de modifier une ligne ou dajouter une ligne.D'ou lutilité de pouvoir les comparer !

Je code en c# jaimerais bien avoir un debut de source pour commencer car je ne vois pas comment faire !
merci a tous

5 réponses

TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
30 juin 2007 à 19:32
Server.MapPath <== renvoi le repertoire courrant sur le site web
Page.MapPath <== renvoi le repertoire courrant de la page en cour

apres tu lit le fichier avec un flux qui te permet de lire ligne par ligne : StreamReader

dim sw as new StreamReader(sMonFichier)

ensuite tu le lit ligne par ligne jusqu'a la fin du fichier :

Do While sr.Peek() >= 0
    Dim sLigne As String = sr.ReadLine()
Loop
sr.Close()

donc pour toi il suffira de faire la meme chose mais avec 2 fichier en même temps :
dim nLigne as integer = 0
dim sw1 as new StreamReader(sMonFichier1)
dim sw2 as new StreamReader(sMonFichier2)

Do Until (sw1.Peek < 0 ) orelse (sw2.Peek < 0))
    nLigne +=1
    dim sLigne1 as string = sw1.ReadLine()
    dim sLigne2 as string = sw2.ReadLine()

    ComparerLigne(sLigne1, sLigne2)
Loop
if sw1.Peek < 0 then
    'Fichier 1 fini donc le reste du fichier 2 differe car ca n'existe pas ici
    'Msg a afficher en consequence
elseif sw2.Peek < 0 then
    'Fichier 2 fini donc le reste du fichier 1 differe car ca n'existe pas ici
    'Msg a afficher en consequence
end if
Private sub ComparerLigne(s1 as string, s2 as string)
    'A vous de jouer :p
    'Msg a afficher en consequence si ca differe
    'numéro de ligne contenu dans => "nLigne"
End Sub

(Pensez a valider les réponse)

TeBeCo
3
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
30 juin 2007 à 19:45
mon dieu je t'ai mit tout en vb.net :s
mes excuse j'etais sur l'autre forum avant j'ai pas tilté :s

//variable de classe
int32 nLigne = 0; 
StreamReader sw1;
StreamReader sw2;

//dans la procedure de lancement :
sw1 = new StreamReader(sMonFichier1);
sw2 = new StreamReader(sMonFichier2);
While ((sw1.Peek() > 0 ) || (sw2.Peek() > 0))
{
    nLigne++;
    String sLigne1 = sw1.ReadLine();
    dim sLigne2 = sw2.ReadLine();

    ComparerLigne(sLigne1, sLigne2);
}
if (sw1.Peek() < 0)
{
    'Fichier 1 fini donc le reste du fichier 2 differe car ca n'existe pas ici
    'Msg a afficher en consequence
}
else
{
    if (sw2.Peek() < 0) then
        'Fichier 2 fini donc le reste du fichier 1 differe car ca n'existe pas ici
        'Msg a afficher en consequence
    }
    else
    {
        'rien d'anormal ici ^^
    }
}

private void ComparerLigne(String s1, String s2)
    //A vous de jouer :p
    //Msg a afficher en consequence si ca differe
    //numéro de ligne contenu dans => "nLigne"
End Sub

j'ai eu une coupure de courrant entre mes 2 post j'ai peut etre laisser passer des betises en perdant ce a quoi je pensais

TeBeCo
3
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
3 juil. 2007 à 12:58
ca serais sympa de donner un signe de vie savoir si la réponse convient ou pas ect ...valider ou pas et tout ce qui va avec

TeBeCo
0
imsse Messages postés 37 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 7 avril 2008
3 juil. 2007 à 14:10
Désoler ce nest pas question que j'ai négliger ta reponse c'est seulemnt quavant de la valider jai voulu la teste,la comprendre et jai eu quelque souci pour ladapter a mon code !

Mais sinon elle me convient parfaitement je vais l'accpeteé.

Merci et désoler du retard !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
4 juil. 2007 à 13:35
Bonne continuation en .net

TeBeCo
0
Rejoignez-nous