IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Ľuboš Čurgó
Tvůrce
Avatar
Ľuboš Čurgó:12.4.2013 14:59

Ahojte, robim skolsky projekt a zasekol som sa. Potrebujem tie 2 listy ktore si nacitam z textaku hodit do jedneho dictionary a neviem ako.. Ukazka kodu

List<string> aj = new List<string>();
        List<string> sj = new List<string>();
        Dictionary<string, string> dic = new Dictionary<string, string>();

        public string GetDataFromAj()
        {
            string line = "";
            using (StreamReader sr = new StreamReader(@"aj.txt")) //nacita data z txt aj
            {
                while (sr.Peek() != -1)
                {
                    line = line + sr.ReadLine() + " ";
                }
            }
            return line;
        }

        public string GetDataFromSj()
        {
            string line = "";
            using (StreamReader sr = new StreamReader(@"sj.txt")) //nacita data z txt sj
            {
                while (sr.Peek() != -1)
                {
                    line = line + sr.ReadLine() + " ";
                }
            }
            return line;
        }


        public void SetToDic()
        {
            sj = GetDataFromSj().Split(new[] { " " }, StringSplitOptions.None).ToList();
            aj = GetDataFromAj().Split(new[] { " " }, StringSplitOptions.None).ToList();
            //SOME COOL STUFF?
       }
 
Odpovědět
12.4.2013 14:59
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Ľuboš Čurgó
David Hartinger:12.4.2013 15:03

Jakmile chceš hodit listy do slovníku, tak je někde problém v návrhu aplikace. Do kolekcí se dávají objekty, nikoli další kolekce. Abychom ti mohli poradit, potřebujeme vědět, co má ten program dělat. Odhaduji podle názvů metod, že děláš slovníček. Očekával bych tedy někde třídu Slovíčko.

Editováno 12.4.2013 15:03
Nahoru Odpovědět
12.4.2013 15:03
New kid back on the block with a R.I.P
Avatar
Luboš Běhounek Satik:12.4.2013 15:03

Jak je tam chces hodit? Nejak je pospojovat?
Pokud jsou stejne dlouhy a chces jen zaznamy na stejny pozici sparovat, tak treba takhle:

for (int i=0; i<aj.Count; i++)
  dic.Add(sj[i], aj[i]);
Nahoru Odpovědět
12.4.2013 15:03
https://www.facebook.com/peasantsandcastles/
Avatar
Ľuboš Čurgó
Tvůrce
Avatar
Odpovídá na David Hartinger
Ľuboš Čurgó:12.4.2013 15:11

mas pravdu je to slovnicek, no chcel som robit jednoduchy preklad slov z anj do sj a naopak. Chcel som si tie slova nacitavat z textoveho suboru a nie priamo ich vkladat v kode do dictionary

 
Nahoru Odpovědět
12.4.2013 15:11
Avatar
Ľuboš Čurgó
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
Ľuboš Čurgó:12.4.2013 15:11

Ano, nieco take som potreboval :] Dakujem

 
Nahoru Odpovědět
12.4.2013 15:11
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Ľuboš Čurgó
David Hartinger:12.4.2013 15:14

Mít ta slova ve 2 souborech je blbost, bude se to špatně spravovat. Tu aplikaci bys měl napsat znovu, je to úplně celé špatně. Slovíčka by měla být v souboru CSV a měla by se načítat do listu typu Slovicko. Slovicko je třída, obsahující vlastnosti Cesky, Anglicky, Spanelsky a tak dále. Kód, co jsi sem poslal, vůbec nedává smysl.

Nahoru Odpovědět
12.4.2013 15:14
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:12.4.2013 15:15

Do kolekcí se mohou dávat další kolekce. Občas to má i smysl.

Nahoru Odpovědět
12.4.2013 15:15
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Michal Žůrek - misaz:12.4.2013 15:22
List<List<string>> neco = new List<List<string>>();

při troše štěstí to bude fungovat.

 
Nahoru Odpovědět
12.4.2013 15:22
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Kit:12.4.2013 15:38

Máš nějaký speciální důvod dělat slovník jako seznam?

Nahoru Odpovědět
12.4.2013 15:38
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Ľuboš Čurgó
Kit:12.4.2013 15:56

Je víc než vhodné, abys měl slovíčka z obou jazyků v jednom souboru hezky vedle sebe, oddělené např. čárkou, středníkem nebo rovnítkem. Pak nebudeš řešit takovou ptákovinu a prostě budeš brát řádek po řádku a ukládat ho do dic.

Nahoru Odpovědět
12.4.2013 15:56
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:12.4.2013 16:05

Udělám třídu i kdyby v ní měla být zas jen kolekce. Nikdy bych nedal kolekci do kolekce. Už jen proto, že vím, jak potom vypadá práce s takovou strukturou.

Nahoru Odpovědět
12.4.2013 16:05
New kid back on the block with a R.I.P
Avatar
Ľuboš Čurgó
Tvůrce
Avatar
Ľuboš Čurgó:12.4.2013 16:23

Nie nemam, len som si chcel precvicit pracu zo zoznamami. Asi to je fakt cele na ..., idem si to teda prerobit :]

 
Nahoru Odpovědět
12.4.2013 16:23
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na David Hartinger
Petr Nymsa:12.4.2013 16:25

Jeden zde nejmenovaný kolega jednou do hry udělal, pokud se nepletu byl to List v Listu a v Listu :D .

Nahoru Odpovědět
12.4.2013 16:25
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Odpovídá na Petr Nymsa
Neaktivní uživatel:12.4.2013 16:31

Tak frajere, nedělej si srandu z nejmenovanýho kolegy, v tý době to mělo svůj význam :D a byl to List Listů Polí textur, tak se uklidni :D :D :D

Nahoru Odpovědět
12.4.2013 16:31
Neaktivní uživatelský účet
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Petr Nymsa:12.4.2013 16:32

Jelikož nejmenovaný kolega neveděl že jde textura v Draw otočit :D, tak si udělal 60 textur pro jeden objekt otočený o několik stupňů ? :D

Nahoru Odpovědět
12.4.2013 16:32
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Petr Nymsa
Kit:12.4.2013 16:33

Pětirozměrné seznamy, to je moje :)

Nahoru Odpovědět
12.4.2013 16:33
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Kit
Petr Nymsa:12.4.2013 16:34

To se špatně udržuje ne ? o_O Nedokážu si představit iteraci a vytahování dat z takovýchto kolekcí .. :O

Nahoru Odpovědět
12.4.2013 16:34
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Odpovídá na Petr Nymsa
Neaktivní uživatel:12.4.2013 16:39

Jmenovaný kolega vůbec neví o co tam šlo :D Nejmenovaný kolega samozřejmě věděl, že se dají textury otáčet, ale nevěděl jak :D a textur bylo pro jeden objekt jen 16 :D!

Nahoru Odpovědět
12.4.2013 16:39
Neaktivní uživatelský účet
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Petr Nymsa
Kit:12.4.2013 17:00

Není to tak hrozné. Hlavně je důležité vědět, kdy si můžeš dovolit to použít a kdy ne. Iterace není žádný problém, ale jak už psal David Hartinger, často je vhodnější je zapouzdřit do tříd. Tedy pokud to má smysl.

Když si však vezmeš obyčejný strom, tak je to také takový seznam, ve kterém je další seznam s dalším seznamem... V DOMu se dostaneš do 10. levelu, ani nevíš jak. Adresářová struktura je přece také seznam seznamů.

Nahoru Odpovědět
12.4.2013 17:00
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 19 zpráv z 19.