Just nu i M3-nätverket
Gå till innehåll

Följa en fil?


militia

Rekommendera Poster

Tja!

 

Sitter o googlar o klurar lite men hittar inte vad jag letar efter. Jag är ute efter en klass som klarar av att följa eller hålla koll på en fil. T.ex när en rad skrivs till en textfil så vill jag även kunna plocka ut denna rad i mitt program. Ungefär som Linux kommandot " tail -F ". Har tittat lite på FileSystemWatcher klassen, men med den lyckas jag bara få fram att filen jag tittar har ändrats, men själva ändringen kan man väl inte få ut?

 

Någon som förstår vad jag vill göra eller har erfaranhet av detta?

 

Tacksam för en knuff i rätt riktning!

 

Länk till kommentar
Dela på andra webbplatser

Det går inte. När en textfil sparas, så skrivs den gamla över helt och hållet, dvs hela filen skrivs, inte bara det som är ändrat. Du kan dock själv analysera detta, genom att jämföra "före"- och "efter"-filerna.

 

När det gäller databasfiler (och även andra filformat), så finns det mölighet att lyssna på filsystemet som då berättar vilka positioner i filen som skrivs med vilken data. Hur man gör för att lyssna på detta i C# har jag dock ingen aning om.

 

 

Länk till kommentar
Dela på andra webbplatser

Hur fungerar programmet tail i linux då? Det finns ju även ett program för Windows som heter BareTail som hela tiden monitorerar filer. Så fort en ny rad skrivs till filen så dyker det upp i programmet. Man kanske måste göra som du säger, dvs jämföra före- och efter- filen. Tex ta sista raden i före-filen och börja leta baklänges i den nya tills man hittar rätt och sedan returnera de rader man har sprungit förbi i den nya filen...

 

Länk till kommentar
Dela på andra webbplatser

Hur fungerar programmet tail i linux då?

 

Ingen aning, jag vet ingenting om filsystemen i Linux.

 

Det finns ju även ett program för Windows som heter BareTail som hela tiden monitorerar filer

 

Ja, men filer som först raderas och sen skrivs på nytt, går inte att följa direkt via filsystemet.

 

Man kanske måste göra som du säger, dvs jämföra före- och efter- filen. Tex ta sista raden i före-filen och börja leta baklänges i den nya tills man hittar rätt och sedan returnera de rader man har sprungit förbi i den nya filen...

 

Jag tror det är ända sättet.

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...