Kezdőoldal » Számítástechnika » Programozás » C# fájlkezelés, miért nem...

2105as kérdése:

C# fájlkezelés, miért nem írja ki a tömb elemeit?

Figyelt kérdés

itt van a forrás kód amit írtam:


int jel = 0;

int i = 0;

StreamReader egy = new StreamReader("nev.txt");

StreamReader ketto = new StreamReader("szuletett.txt");

while (!egy.EndOfStream && !ketto.EndOfStream)

{

//Console.WriteLine(egy.ReadLine());

//Console.WriteLine(ketto.ReadLine());

jel++;

}

egy.Close();

ketto.Close();


Console.WriteLine();

string[] nev = new string[jel];

string[] datum = new string[jel];

for ( i = 0; i < jel; i++)

{

nev[i] = egy.ReadLine();

Console.WriteLine("A szemlyek nevei:"+" "+nev[i]);



}



Console.ReadKey();



Feltöltöttem a tömböt (nev) csak nem tudom miért nem írja ki a benne lévő elemeket.


2017. márc. 22. 18:11
 1/3 sharkxxx ***** válasza:

Túl hamar bezárod a fájlt.

Tedd az "egy.Close()" parancsot az algoritmus végére!

2017. márc. 22. 19:05
Hasznos számodra ez a válasz?
 2/3 A kérdező kommentje:

egy.Close();

ketto.Close();


a for ciklus után helyeztem el, de a probléma még mindig fenn áll.

2017. márc. 22. 20:19
 3/3 sharkxxx ***** válasza:

Amikor az első ciklus végig olvassa a fájlt, akkor a fájlmutató a fájl végére fog mutatni.

Ha újra végig akarod olvasni a fájlt, akkor a fájlmutatót a fájl elejére kell állítanod.

Írd be ezt a két parancsot a két ciklus közzé, hogy a fájlmutató a fájl elejére mutasson:


egy.DiscardBufferedData();

egy.BaseStream.Position = 0;

2017. márc. 22. 21:14
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!