Ik heb een perlscriptje geschreven dat verschillende typen text-files moet analyseren.
Deze files zijn gemaakt in verschillende omgevingen.
Linux, Windows en Mac.
Perl leest deze files regel voor regel in middels een WHILE-lusje.
Het vervelende is dat Perl afhankelijk van het systeem waar het op draait de regeleinden herkent.
Een regeleinde in een 'linuxfile' is hex 0a.
Een regeleinde in een 'windowsfile' is hex 0d 0a.
En onder MacOS is het hex 0d.
Als ik Perl onder MacOS draai herkent ie alleen de regeleinden die hex 0d zijn.
Onder Windows, 0d 0a. En onder linux 0a.
In het ergste geval kan dit dus resulteren in dat ie een hele file als 1 regel leest.
Is er een functie, een module of een slimme truc zodat Perl weet dat dit allemaal 'regeleinden' zijn?
Deze files zijn gemaakt in verschillende omgevingen.
Linux, Windows en Mac.
Perl leest deze files regel voor regel in middels een WHILE-lusje.
Het vervelende is dat Perl afhankelijk van het systeem waar het op draait de regeleinden herkent.
Een regeleinde in een 'linuxfile' is hex 0a.
Een regeleinde in een 'windowsfile' is hex 0d 0a.
En onder MacOS is het hex 0d.
Als ik Perl onder MacOS draai herkent ie alleen de regeleinden die hex 0d zijn.
Onder Windows, 0d 0a. En onder linux 0a.
In het ergste geval kan dit dus resulteren in dat ie een hele file als 1 regel leest.
Is er een functie, een module of een slimme truc zodat Perl weet dat dit allemaal 'regeleinden' zijn?