Een collega van me heeft gevraagd of ik mbv Java niet een manier heb om snel een text bestand van speciale karakters te ontdoen. Aangezien mijn Java kennis niet zo erg "diep" gaat wilde het hier eens voorleggen. Het gaat om vrij grote bestanden (100+ Mb) en dus wil ik voorkomen om deze in het geheugen te laden. Voor zover mijn kennis gaat kom je dan uit op streams (iets waar ik weinig) vanaf weet.
Wat ik dus wil weten welke aanpak het snelst zal werken. Dit zijn mijn ideeen erbij:
1) Een bestand kopieren en het doelbestand in een bepaalde karakterset, die wel wordt geaccepteerd wordt, opslaan.
2) Middels een (buffered?) bytestream het bestand inlezen en wegschrijven en elke bij elke byte controleren of het een speciaal karakter is of niet.
3) Een andere manier om snel (niet geheugen intensief) een soort van find & replace te doen.
Momenteel wordt het gedaan middels TCL (?) wat momenteel niet de beoogde performance heeft. Het TCL script loopt door de verschillende regels en doet daar een find en replace op. Aangezien ik TCL niet ken weet ik dus ook niet hoe efficient dit is, maar het lijkt mij dat dit in Java sneller kan.
Wat ik dus wil weten welke aanpak het snelst zal werken. Dit zijn mijn ideeen erbij:
1) Een bestand kopieren en het doelbestand in een bepaalde karakterset, die wel wordt geaccepteerd wordt, opslaan.
2) Middels een (buffered?) bytestream het bestand inlezen en wegschrijven en elke bij elke byte controleren of het een speciaal karakter is of niet.
3) Een andere manier om snel (niet geheugen intensief) een soort van find & replace te doen.
Momenteel wordt het gedaan middels TCL (?) wat momenteel niet de beoogde performance heeft. Het TCL script loopt door de verschillende regels en doet daar een find en replace op. Aangezien ik TCL niet ken weet ik dus ook niet hoe efficient dit is, maar het lijkt mij dat dit in Java sneller kan.
Verlanglijstje: Switch 2, PS5 Pro Most wanted: Switch 2