Práce se složkami a soubory   zodpovězená otázka

VB.NET, Algoritmy

Dobrý den,

narazil jsem na menší problém, který se podobá jedné z řešených situací na tomto fóru. Šlo o vypsání podsložek z určité složky pomocí fukcí System.IO a cyklu For Each. Úkolem bylo, aby see dané položky v ListBoxu vypisovaly tzv.: bez své cesty tedy jenom konkrétní název dané složky. Kód vypadal následovně:

Dim slozky As New IO.DirectoryInfo(cesta)

For Each prom2 As IO.DirectoryInfo In slozky.GetDirectories()

ListBox1.Items.Add(prom2)

Next

Já bych tento kodpotřeboval upravit, aby se mi vypisovali soubory z této složky(pokud v tom budou zahrnuty podsložky tak nevadí), ale taktéž jenom názvy bez své cesty. Nějako se mi to zatim nedaří vypsat bez těch cest. Předem moc děkuji za pomoc

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět
ListBox1.Items.Add(prom2.Name)

Příště se nejdřív podívejte na členy třídy DirectoryInfo než vznesete takto zbytečný dotaz.

nahlásit spamnahlásit spam -2 / 2 odpovědětodpovědět

Děkuji za radu, ale tohle jsem právě nechtěl. Potřebuji zobrazit jednotlivé soubory v té složce a né jenom samotné podsložky.

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

"Úkolem bylo, aby see dané položky v ListBoxu vypisovaly tzv.: bez své cesty tedy jenom konkrétní název dané složky"

Takže si rozmyslete co vlastně chcete.

nahlásit spamnahlásit spam -2 / 2 odpovědětodpovědět

Promiňte, ale musíte si to přečíst do konce. Nakonci píšu, že bych to potřeboval upravit, aby se mi vypsaly soubory z určité složky a né jenom podsložky z daného Folderu:-)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Takto načtete jména souborů ve složce:

For Each fileName In System.IO.Directory.GetFiles(cesta)
  listBox1.Items.Add(New System.IO.FileInfo(fileName).Name)
Next

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět

To je přesně ono děkuji moc za radu.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Jenom drobnost, ale zjištění samotného názvu souboru z cesty je lepší použít tohle:

Path.GetFileName(fullPath)

Nevytváříte zbytečně novou instanci FileInfo, ale jen String. FileInfo zabere v paměti daleko víc místa a volá určitě nějaké P/Invoke, tím pádem je určitě pomalejší.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback