/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
Fjerne extra email kopier i Pegasus *.pmm~
Fra : Ebbe Poulsen


Dato : 29-03-01 11:49

Hej.

Jeg forsøger at lave et lille program der skulle kunne fjerne extra
kopier af emails fra Pegasus. Jeg havde pludselig 3 eksemplarer af
alle emails i en folder som Pegasus have bedt om blev reindekseret.

En Pegasus folder adskiller de enkelte emails i den tilhørende *.pmm
fil med Ascii 26 (eof); derfor kunne jeg ikke bruge en fiks lille
kodestupm fra comp.lang.awk:

-----stump af AWK kode
#Test af linje med Message-ID : er den set før ?
#   hvis ikke set før: ind i hash
if ( substr($0,1,9) == "Message-I" ){
   Mess = $0       # linje ind i variabel
   if( !(Mess in a) ){       # hvis endnu ikke i hash
    a[Mess] ; Set1steGang = 1 # så ind i hash & flag   
   }
}
-----

Denne lille kodestump kunne pille de extra kopier ud af *.pmm filen,
men kun efter at Ascii 26 var erstattet af noget andet. Da jeg så
efterfølgende satte Ascii26 tilbage, ville Pegasus desværre ikke
anerkende filen.

Jeg har nu lavet en del af det indledende arbejde i Pascal ved at
bruge File of Char så der ikke er problemer med Ascii 26. Jeg er nået
dertil at alle Message-ID linjerne kan opsamles. Selve den tilhørende
email er først opsamlet i en buffer. Inden den nu enten skrives til
fil eller blot ignoreres afhængig af flaget Set1steGang, er det den
lille kodestump kommer ind og afgør sagen.

Jeg vil nu høre om der skulle være nogen med en ide til at lave noget
tilsvarende den lille AWK kodestump - i Pascal.

--
Mvh, Ebbe Poulsen, epa @post.cybercity.dk

 
 
Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste