Problém s třídou Object – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Problém s třídou Object – .NET – Fórum – Programujte.comProblém s třídou Object – .NET – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Filip0913
~ Anonymní uživatel
12 příspěvků
10. 10. 2012   #1
-
0
-

Mám .txt soubor s jménama (na každé řádce jedno) a chci to převést do proměnné typu Object tak abych to pak mohl zobrazit v ComboBox, tedy fomát:

this.trida.Items.AddRange(new object[] {
            "Prima A",
            "Prima B",
            "Sekunda A",
            "Sekunda B",
            "Tercie",
            "Kvarta",
            "1. ročník",
            "Kvinta",
            "2.ročník",
            "Sexta",
            "3. ročník",
            "Septima",
            "4. ročník",
            "Oktáva"});

Jak to mám udělat? Docházejí mi nápady. Tady takhle to čtu ze souboru:

public static Object ziskejStudenty(string cesta)
        {
            Object students = new object[] { };

            using (StreamReader sr = new StreamReader(cesta))
            {
                string s;
                while ((s = sr.ReadLine()) != null)
                {
                    
                }
            }

            return students;
        }

A potřebuju doplnit ten cyklus while... :) díky za pomoc

Nahlásit jako SPAM
IP: 88.101.6.–
Reklama
Reklama
Vaizo0
Stálý člen
10. 10. 2012   #2
-
+1
-
Zajímavé

Myslím, že správně to má být takhle:

public static string[] ziskejStudenty(string cesta)
        {
            var students = new List<string>();

            using (StreamReader sr = new StreamReader(cesta))
            {
                string s;
                while ((s = sr.ReadLine()) != null)
                {
                    list.Add(s);
                }
            }

            return students.ToArray();
        }

Pak zavoláš:

this.trida.Items.AddRange(ziskejStudenty(cesta));

a je to.

Můžeš klidně vracet string[], protože pole jsou kovariantní (tj. typy jsou kompatibilní a můžeš říct, že string[] je object[]).

Nahlásit jako SPAM
IP: 85.93.127.–
Filip09130
Newbie
10. 10. 2012   #3
-
0
-

#2 Vaizo


Díky moc :) funguje

Nahlásit jako SPAM
IP: 88.101.6.–
ingiraxo+15
Grafoman
10. 10. 2012   #4
-
0
-

jinak řečené všechno v .NETu je založený na třídě Object, takže bez problému můžeš implicitně přetypovat cokoli na object - tam kde to chce vstupní parametr object, můžeš dát úplně cokoli, ale ComboBox pracuje pouze se stringy (takže na object zavolá ToString())

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Filip09130
Newbie
10. 10. 2012   #5
-
0
-

#2 Vaizo
Planý poplach, nefunguje to úplně :)

1. nepodporuje to diakritiku (háčky, čárky)

2. není možné, že by si to uchovávalo předchozí hodnoty?

Nahlásit jako SPAM
IP: 88.101.6.–
ingiraxo+15
Grafoman
10. 10. 2012   #6
-
+1
-
Zajímavé

#5 Filip0913
soubor musíš mít uloženej v UTF8 a ještě StreamReader musí být nastavenej na UTF8 encoding

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Filip09130
Newbie
10. 10. 2012   #7
-
0
-

#6 ingiraxo
Jak nastavím ten StreamReader? :)

Nahlásit jako SPAM
IP: 88.101.6.–
ingiraxo+15
Grafoman
10. 10. 2012   #8
-
+1
-
Zajímavé

#7 Filip0913
Druhej parametr

StreamReader("soubor.txt", Encoding.UTF8)
Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Vaizo0
Stálý člen
11. 10. 2012   #9
-
0
-

#5 Filip0913
ad 2) Předchozí hodnoty čeho a kdy? Pokud jde o to pole, tak si ho klidně ulož do nějaké proměné a můžeš s ním pak dál pracovat  

Nahlásit jako SPAM
IP: 94.113.35.–
Filip09130
Newbie
11. 10. 2012   #10
-
0
-

#9 Vaizo
Už to všechno funguje správě (to zachovávaní hodnot zmizelo po předělání na UTF8) díky :)

Nahlásit jako SPAM
IP: 88.101.6.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 38 hostů

Podobná vlákna

Problém se třídou Color — založil john

Problem in Object — založil neimenuje

Pomoc se tridou — založil Jirinas

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý