Поскольку я могу получать информацию о папке в cbuilder Причал

У меня есть адрес папки. Что я могу использовать код для conocera имена папок и файлов, которые внутри этой папки, которой у меня есть адрес. Я хочу узнать имена файлов и папок, которые есть в адресе, который у меня есть, который является адресом папки. В c ++ cbuilder (Причал)

1
задан 17.05.2019, 19:18
2 ответа

Как они комментируют их compaГ±eros mГЎs наверху, не определяя mГЎs, подробно опиши только я могу говорить тебе, что есть несколько способов, уже будьте используя API Windows, или собственные библиотеки C ++ Builder.

очень Простой пример, если он стоит тебе для того, чтобы начать искать mГЎs детали. Покажи все файлы и каталоги определенного маршрута:

String path = "c:\\";
String str = "Contenido de " + path + "\n";
TSearchRec sr;
bool finalizado = FindFirst(path + "\\*.*", faAnyFile, sr);
while (!finalizado)
{
    if (sr.Attr & faDirectory)
        str += "[" + sr.Name + "]\n";
    else
        str += sr.Name + "\n";

    finalizado = FindNext(sr);
}
FindClose(sr);
ShowMessage(str);

TambiГ©n ты можешь бросать беглый взгляд в компоненты TFileListBox и TDirectoryListBox ее pestaГ±a "Вин 3.1", они немного старые, но продолжают иметь Вашу утилиту.


(Хотя вопрос немного старый я думаю, что он может быть Гєtil для других людей, что estГЎn начинаясь и который искал бы вопрос в будущем)

(SerГ - В интересный, что кто-то создаст этикетку [c ++ builder], равно как она есть других составителей C ++, и как он существует в ней versiГіn в inglГ©s StackOverflow)

1
ответ дан 03.12.2019, 04:26
  • 1
    Спасибо за создание этикетки и ademá s так rá pidamente. – Leo 17.05.2019, 19:21
  • 2
    занеси в список этикетку, это была случайность, которая видела твой ответ так rá я прошу, не я habí в столкнутый с вопросом. Приветствие и +1 – jachguate 17.05.2019, 19:27

Если ты используешь одну versiГіn современные C ++ Builder, ты можешь воспользоваться классом TDirectory, чтобы получать список всех файлов, содержавших в папке. EspecГ-ficamente mГ©todo GetFiles.

Восток mГ©todo возвращает тебе договоренность dinГЎmico, что содержит имена файлов.

TStringDynArray lista;
TSearchOption opciones;
String path = "c:\\";

opciones = TSearchOption::soTopDirectoryOnly;

lista = TDirectory::GetFiles(path, "*.*", opciones);

for (int i = 0; i < lista.Length; i++)
    hacerAlgoConElArchivo(lista[i]);

Одно из преимуществ использования эти классы состоит в том, что, не только cГіdigo вытекающий он mГЎs просто, но это - мульти-платформа 1 , так как классы герметизируют в корпусе различия, которые есть, между операционной системой и другой.

1 : Между платформами, вынесенными из-за c ++ builder.

0
ответ дан 03.12.2019, 04:26