[c#]Kopie pole

C++, C#, Visual Basic, Delphi, Perl a ostatní

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod Squad leader 10. 7. 2012 20:15

Ahoj, jde mi o rychlost.

Chci načíst soubor do paměti RAM.

V podstatě jde o problém, jak zkopírovat pole do dvourozměrného pole (pole s indexem).
Upozorňuji, že se musí jednat o "tvrdou kopii".

Kód: Vybrat vše

string[,] kopieMojePole = new string[1000,20];



using (StreamReader sr = new StreamReader("Spytihnev.csv", Encoding.GetEncoding(1250)))
{
while ((radek = sr.ReadLine()) != null)
{

string[] mojePole = radek.Split(';');


//  Tady nevim jak to spravne napsat
mojePole.CopyTo(kopieMojePole[pocitadlo], 0);
pocitadlo++;
}
}

Squad leader
Kolemjdoucí

Odeslat příspěvekod Wikan 10. 7. 2012 20:44

A proč to kopíruješ? Přes reference by to bylo lepší.
Wikan
Pokročilý
Uživatelský avatar

Odeslat příspěvekod Squad leader 10. 7. 2012 20:51

Protože potřebuju pracovat se starými a novými hodnotami.

Nebo se zeptám jinak !

Jaký doporučujete postup, pro přístup ke kterémukoliv řádku v souboru?
Chci to ve formátu string.

A tak jak to mám napsané můžu přistupovat jen k jednomu řádku.

Ale já se potřebuju libovolně vracet.

-- 10. 7. 2012 20:58 --

Omlouvám se za spam.

To co jsem řešil jde udelat úplně jinak.

http://stackoverflow.com/questions/5796 ... m-txt-file

(neco v tom duchu ;-) )
Squad leader
Kolemjdoucí

Odeslat příspěvekod Wikan 10. 7. 2012 21:00

Přístum ke kterémukoliv řádku není zrovna jednoduchá věc. Pokud není soubor moc velký, tak bych ho celý načetl do paměti a tam si s ním hrál.
Wikan
Pokročilý
Uživatelský avatar

Odeslat příspěvekod Tarot 10. 7. 2012 21:04

Přesně ! O to mi taky jde !

Vyřešil jsem to takhle:

Kód: Vybrat vše
using (var lines = File.ReadAllLines(@"Spytihnev.csv"))
            {


                var line = lines[100];

            MessageBox.Show(line.ToString());
            }

Jenomže to na mě řve, že
Error   1   'string[]': type used in a using statement must be implicitly convertible to 'System.IDisposable'


Potřebuju uzavřít otevření toho souboru, jak se to provádí?

A nebo googluju...... :-)
Prý jsem tady měl podpis v rozporu s pravidly.... wouuu
Tarot
Junior
Uživatelský avatar

Odeslat příspěvekod Wikan 10. 7. 2012 21:15

Ten se zavře hned po dokončení ReadAllLines.
Wikan
Pokročilý
Uživatelský avatar


  • Podobná témata
    Odpovědi
    Zobrazení
    Autor

Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků