Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Jak listować zawartość katalogu?

Ostatnio zmodyfikowano 2008-11-26 23:45
Autor Wiadomość
lynx
Temat założony przez niniejszego użytkownika
Jak listować zawartość katalogu?
» 2008-11-25 21:13:08
Pytanie, tak jak w temacie. Chcę aby mój program odczytywał wszystkie pliki *.txt z danego folderu. Co do ilości zmiennch/klas to utworzę sobie to vectorem, ale jak zrobić by program znalazł wszystkie pliki bez podawania ich dokładnej nazwy(jedynie folder)?
P-2632
DejaVu
Listowanie zawartości katalogu
» 2008-11-26 01:02:14
[tutorial]Plik nagłówkowy: io.h.

Sprawdzanie czy istnieje plik

C/C++
_finddata_t danePliku;
long uchwyt = _findfirst( "*.txt", & danePliku );

Jeśli wartość zmiennej uchwyt wynosi -1 to znaczy, że żaden plik nie został znaleziony. W przeciwnym wypadku jest to uchwyt za pomocą którego możemy dostać informacje o wszystkich plikach pasujących do zapisu "*.txt" w danym katalogu.

Przeglądanie listy znalezionych plików

int SzukamDalej = _findnext( uchwyt, & danePliku );
Jeśli zmienna SzukamDalej jest równa -1 to znaczy, że nie znaleziono więcej plików.

Zwalnianie używanych zasobów

_findclose( uchwyt );
Po zakończeniu wyszukiwania należy pamiętać o zwolnieniu zasobów (czyli uchwytu, który otrzymaliśmy po wywołaniu funkcji _findfirst(...)). Wartość -1 nie jest uchwytem - jest informacją o niepowodzeniu.

Odczytywanie pozostałych informacji o pliku

Struktura _finddata_t zawiera pola, które są wypełniane w przypadku powodzenia funkcji _findfirst(...) czy też _findnext(...).
Informacje o polach tej struktury i o ich przeznaczeniu można przeczytać w MSDN'ie http://msdn.microsoft.com/en-us/library/kda16keh(VS.80).aspx. Fajnie by było, gdyby ktoś się podjął przetłumaczenia najważniejszych informacji lub napisał własnymi zdaniami o tym co będzie użyteczne dla potencjalnego czytelnika i jak z tego można w praktyce skorzystać.
[/tutorial]

P-2637
lynx
Temat założony przez niniejszego użytkownika
» 2008-11-26 23:24:19
A jak to później wczytać do fstream-a?

A ten post to nadawałby się do działu artykuły, bo jednak jest to taki mini kurs. :D
P-2639
DejaVu
Ciąg dalszy informacji
» 2008-11-26 23:31:13
[tutorial]W nawiązaniu do pytania udzielam krótkiego wyjaśnienia

Odczytywanie nazwy pliku

Aby odczytać nazwę pliku należy wykorzystać dane zwrócone do struktury przez funkcje _findfirst() lub _findnext().

Przykładowe otwarcie znalezionego pliku do odczytu:
C/C++
fstream plik;
plik.open( danePliku.name, ios::in );
[/tutorial]

/edit:
Daj linka więc w dziale artykuły, że treść tego tematu warto umieścić w dziale artykuły (jak powstanie).
P-2640
lynx
Temat założony przez niniejszego użytkownika
» 2008-11-26 23:45:33
Dzięki za pomoc, :) utworzyłem temat z linkiem, w dziale artykuły.
P-2642
« 1 »
  Strona 1 z 1