int f;
TSearchRec sr;
f=FindFirst(buf.c_str(),faAnyFile,sr);
f=FindNext(sr);
f=FindNext(sr);
FindFirst и FindNext
И если можно растолкуйте значение одной или двух точек которые эти команды находят изначально!!!!
описание моих переменных:
Код:
в переменной buf указываеться путь к папке, где идет поиск.
- faReadOnly 0x00000001 Только чтение
- faHidden 0x00000002 Скрытый
- faSysFile 0x00000004 Системный
- faVolumeID 0x00000008 Метка диска
- faDirectory 0x00000010 Директория
- faArchive 0x00000020 Обычный
- faAnyFile 0x0000003F Любой файл
Одна точка - текущая директория.
Две точки - директория, содержащая текущую.
Это я все знаю, но дело в том что я при поиске использую атрибут faAnyFile-любой файл. С помощью этих функций я опредедляю содержимое папки. Может я не конкретно спросил, но вот что именно меня интересует: Как из найденных с помощью этих функций файлов и папок определить что есть папка, а что есть файл?
Код:
TSearchRec sr;
if (FindFirst(buf.c_str(), faAnyFile, sr) == 0)
{
do
{
if (sr.Attr & faDirectory)
// Нашли директорию
else
// Нашли не-директорию
}
while (FindNext(sr) == 0);
FindClose(sr);
}
if (FindFirst(buf.c_str(), faAnyFile, sr) == 0)
{
do
{
if (sr.Attr & faDirectory)
// Нашли директорию
else
// Нашли не-директорию
}
while (FindNext(sr) == 0);
FindClose(sr);
}