Avatar billede joshin Nybegynder
29. juli 2004 - 17:19 Der er 3 kommentarer og
1 løsning

Læse bestemt del af fil

Hej eksperter

Jeg har en større fil indeholdende en række 'ord' af samme længde.
Jeg vil gerne kunne hente ét bestemt ord ud.
Eks: jeg ønsker ord nr. 21036, jeg ved det ligger som char 21036*9 og 8 chars frem.

Kan man ikke gøre det smarter end at læse sig sekventielt frem igennem filen?
Avatar billede arne_v Ekspert
29. juli 2004 - 19:03 #1
Hvis *alle* er lige lange: jo

Prøv:

FileStream fs = new FileStream("foobar.dat", FileAccess.Read);
fs.Seek(21036*9, SeekOrigin.Begin);
fs.Read(buf, 0, 8);
Avatar billede joshin Nybegynder
29. juli 2004 - 19:28 #2
Kombineret med en BinaryReader, for at læse et char[] virker det fint.

er der forskel på at bruge
fs.seek(index,,SeekOrigin.Begin) og fs.Position(index) som jeg selv puslede med?
Avatar billede arne_v Ekspert
29. juli 2004 - 19:35 #3
Jeg tror at den virker helt på samme måde.
Avatar billede arne_v Ekspert
29. juli 2004 - 19:35 #4
Funktionaliteten er bare kendt som "seek" i mange andre programmerings sprog.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester