Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: Kansion sisältö

Sivun loppuun

nakkikorva [17.10.2004 14:37:44]

#

Millä saisi windowsissa luettua jonkun kansion sisällön, siis kaikki tiedostot mitä siellä on? Ja vielä jos saisi vain tietyn formaatin tiedostot luettua, niin olisi parempi. Kieli on C.

Metabolix [17.10.2004 15:00:41]

#

Terveisiä Laaksoselle Rekursio-oppaan merkeissä: <io.h> on VC++:n helpin mukaan C:n vakiokirjasto, ja siitä löytyvien tiedostonlistausfunktioiden nimet näyttäisivät olevan samat kuin Pascalissa, joten olisi varmaan syytä yrittää lisätä näillä toteutettu kansionlistausesimerkki sinne Rekursion esimerkkeihin.

Itse vastaus:
Tuo onnistuu _findfirst ja _findnext -funktioilla, jotka löytyvät <io.h> -tiedostosta. Tarkemmin en osaa kertoa, näyttivät juuri riittävän erilaisilta kuin Pascalissa. Myös Windowsin omilla funktioilla varmaan onnistuu, ja jos ohjelmaa ei ole tarkoitus muille systeemeille kääntää, niin niitä voi olla helpompi käyttää.

Meitsi [17.10.2004 15:37:20]

#

Onnistuu aivan helposti.

SYSTEM("DIR");

:)

Antti Laaksonen [17.10.2004 15:55:59]

#

Ja Windowsin omat funktiot ovat FindFirstFile ja FindNextFile. MSDN:ssä on myös valmis esimerkki C-ohjelmasta, joka selvittää hakemiston tiedostot.

nakkikorva [18.10.2004 19:16:25]

#

Saan tuolla FindFirstFilella tiedoston nimeksi pelkän pisteen. Missähän vika?

kaviaari [18.10.2004 19:18:49]

#

SYSTEM("DIR"); up your ass.

Deewiant [18.10.2004 19:21:37]

#

Mutta oivoi, sitten ei toimikaan välttämättä esim. Linuxissa.

System()-funktiota ei tulisi periaatteessa ikinä käyttää, vain joissain omaan tarkoitukseen tulevissa pikkuohjelmissa.

Antti Laaksonen [18.10.2004 19:24:05]

#

nakkikorva kirjoitti:

Saan tuolla FindFirstFilella tiedoston nimeksi pelkän pisteen. Missähän vika?

Kokeilitko, mitä sen jälkeen tulee? En testannut asiaa, mutta ainakin PHP:ssä ensimmäisinä hakemiston tiedostoina näkyy "." ja "..", joiden jälkeen tulevat varsinaiset alihakemistot ja tiedostot. Pistemerkinnät kuvaavat omaa hakemistoa ja alempaa hakemistoa.

nakkikorva [18.10.2004 19:38:42]

#

No siitähän se johtuikin. Kiitos paljon!


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta