Wątek przeniesiony 2014-12-29 14:29 z przez ŁF. Powód: Wątek dotyczący podstaw

Operacje na pliku

Odpowiedz Nowy wątek
2014-12-29 13:18
Złoty Szczur
0

Witam robię konsolową grę w węża. Chciałbym zaimplementować w niej tablicę chwały z najlepszymi wynikami. Mój pomysł wyglada mniej więcej tak:
utworzyłem Listę z obiektami NajlepsiGracze

 List<NajlepsiGracze> najlepsi = new List<NajlepsiGracze>();

obiekt NajlepsiGracze ma dwa pola: nick i ilość zdobytych punktów
na początku programu chce z pliku tekstowego (jeśli takowy istnieje) wczytywać listę z pliku. i tu pojawia się pytanie: jak to zrobić?

wczytywać całość do stringa i to później jakoś dzielić czy może jest jakieś lepsze rozwiązanie?

Pozostało 580 znaków

2014-12-29 13:23
0

plik z wynikami:
[nazwa_gracza][separator][ilość_zdobytych_punktów]

Później czytaj co linię i rozdzielaj te części i przypisuj do pól obiektu które są częścią listy.


GG: 10101100010110000100011101 (BIN)
"Nie wszystko napisane w internecie jest prawdą" - Józef Piłsudski.

Pozostało 580 znaków

2014-12-29 13:25
0

Rozdział 12
http://msdn.microsoft.com/pl-[...]em.icomparable(v=vs.110).aspx


Przyjmę zlecenia / projekty do wykonania w c#. Zainteresowanych zapraszam do konwersacji na PW.

Pozostało 580 znaków

2014-12-29 15:28
Złoty Szczur
0

ok. struktura pliku wygląda następująco:

Loki 0 punktów
mis 0 punktów
Ala 0 punktów
Bolek 0 punktów

napisałem takie coś:

 
string[] wyrazy = new string[3];
                    System.IO.StreamReader file = new System.IO.StreamReader(path);
 
                    while ((roboczy = file.ReadLine()) != null)
                    {
 
                        wyrazy = roboczy.Split(new Char[] { ' ' });
                        Console.WriteLine("Ilosc elementow w 'wyrazy': {0}", wyrazy.Length);
                        Console.WriteLine("Ilosc elementow w 'najlepsi': {0}", najlepsi.Count);
                        Console.ReadKey();
 
                        //Console.WriteLine(wyrazy[1]);
                        //Console.ReadKey();
 
                        for (int i = 0; i< wyrazy.Length; i++)
                        {
                            Console.WriteLine(wyrazy[i]);
                        }
                        ng.Nick = wyrazy[0].ToString();
                        ng.IloscZdobytychPunktow = Convert.ToInt16(wyrazy[1]);
                        najlepsi.Add(ng);
                    }
                    file.Close();

otwieram plik. czytam linia po linii, rozdzielam elementy w każdej linii i podstawiam do obiektu. z tym że pętla przechodzi tylko raz poprawnie. za drugim razem już się wykrzacza. wyskakuje bład że indeks tablicy wyrazy jest poza zasiegiem

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0