2012-03-29 3 views
0

Я хочу иметь доступ ко всем файлам папки и иметь их список и работать с ними.
Например: есть папка с именем "new folder "и состоит из файлов:. 1.txt и 2.txt
Я не знаю, что находятся в папке new folder Поэтому я хочу, список файлов в нем
Поэтому вопросы. :
1 Как я могу найти такой список?
2- Как я могу удалить файл (например, 2.txt), знаю ли я, что есть файл с этим именем или нет.
3- Можно ли изобразить out был использован txt-файл или нет (он пуст или нет)
thanks;с именами файлов и их удалением

+1

Это зависит от платформы. –

+0

Какая операционная система? – BoBTFish

+1

[Что вы пробовали?] (Http://mattgemmell.com/2008/12/08/what-have-you-tried/) –

ответ

2

Я бы использовал Boost filesystem для анализа содержимого папки и remove, чтобы удалить файл. Вы найдете в файловой системе tutorial некоторый образец, который облегчит вашу работу.

: remove (путь) он доступен в форсированной файловой системе.

+0

Стоит отметить, что: «Функция remove вызывает файл чье имя является строкой, на которую указывает имя файла, которое больше не доступно этим именем "(окончательный проект C11 N1570 7.21.4.1.2), который не совсем то же, что и его удаление, а open-std.org говорит: Неверное поведение для файлов, отличных от обычных файлов. " http://www.open-std.org/JTC1/SC22/WG15/docs/rr/9945-1/9945-1-59.html, поэтому 'remove()' может быть не таким хорошим, как что-то конкретное для платформы. – BoBTFish

+0

Хммм ... на другой странице говорится: «Если путь не назвал каталог, remove (путь) должен быть эквивалентен unlink (path). Если имена путей в каталоге, remove (путь) должен быть эквивалентен rmdir (path) «. http://pubs.opengroup.org/onlinepubs/009695399/functions/remove.html Не совсем уверен, что это оставляет нас (относительно систем Posix). – BoBTFish

+0

@BobTFish: Я надеюсь, что то, что происходит при выдаче таких звонков, будет тем, что мы * логически ожидаем, по модулю таких сложных вопросов, как * условия гонки * и т. П. ... – CapelliC

Смежные вопросы