Kezdőoldal » Számítástechnika » Programozás » Hogyan csinálhatom meg azt...

Hogyan csinálhatom meg azt hogy a streamreader readlines metódusa újból előről fusson?

Figyelt kérdés

Ha egymás után lefut akkor mindig a következő sort adja vissza de mi van akkor ha nekem csak véletlenszerűen beállított sorig szeretném hogy lefusson ez után pedig kezdje előről az első sortól.


Hogyan csinálhatom hogy előről kezdje mikor még maradtak hátra sorok amiken nem akarom hogy végigmenjen hanem kezdje ilyenkor az elejétől?


2016. aug. 25. 12:08
 1/4 anonim ***** válasza:

A StreamReader által kezelt Stream-nek be tudod állítani a pozícióját:

using (Stream s = File.OpenRead(...))

using (StreamReader reader = new StreamReader(s)) {

.. long Position = s.Position; //Ahhoz, hogy vissza tudjunk állni a sor olvasása után, tudnunk kell, hogy hol álltunk.

.. reader.ReadLine();

.. s.Position = Position; //És itt visszaállunk

}

2016. aug. 25. 12:58
Hasznos számodra ez a válasz?
 2/4 anonim ***** válasza:
Ja bocs. Akkor a Position-t 0-ra állítod értelemszerűen.
2016. aug. 25. 12:59
Hasznos számodra ez a válasz?
 3/4 A kérdező kommentje:

Értem köszi.

Találtam egy másik megoldást is ez pedig a seek használata de nem akar működni csak akkor ha valami buffert tartalmazó.... kitörlök.


Miért van ez így és mi ez a buffer?

2016. aug. 25. 16:03
 4/4 anonim ***** válasza:

A StreamReadernek van egy buffere, ezért nem feltétlen működik a seek.


(amúgy nem előről, hanem elölről :P)

2016. aug. 25. 16:25
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!