| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Программирование под Unix/Linux > как узнать существует ли файл? |
| Автор: Hose 12.5.2006, 18:18 |
| Приветствую. Пишу програмку под *nix. Причем компилироваться она будет не мною и неизвестно на каком *nix. Сооответственно есть необходимость использовать только те функции и библиотеки, которые есть везде. Компилятор ориентировочно gcc. Мне необходимо проверить существует ли файл по заданному пути. Какую функцию для этого лучше использовать? Спасибо. |
| Автор: GrayCardinal 12.5.2006, 18:42 | ||||
| $ man access или :Man access
Или тупо через open (#include <fcntl.h>).
|
| Автор: DeadSoul 12.5.2006, 22:01 |
| boost::filesystem |
| Автор: Spalax 16.5.2006, 08:14 | ||
Да ну не весело
|
| Автор: Mayk 16.5.2006, 08:24 |
В кач-ве альтернативы можно использовать http://www.opengroup.org/onlinepubs/009695399/functions/stat.html (а также lstat, fstat - man автору в помощь). |
| Автор: GrayCardinal 17.5.2006, 08:51 |
| Mayk, Вы б еще "link" предложили. Или "unlink" шоб не париться. |
| Автор: GrayCardinal 17.5.2006, 09:12 |
| А еще можно через "exec" и проверять код возврата. А еще можно через socket (AF_UNIX...) + bind и тоже проверять код возврата. А еще можно фигней не маяться и тему закрыть. |
| Автор: Hose 17.5.2006, 10:31 |
| Всем спасибо. Тему действительно можно закрывать. P.S. в итоге использовал fopen(). |
| Автор: Mayk 17.5.2006, 20:33 |
| GrayCardinal, вызов link'ов, unlink'ов и exec'ов вовсе не лишён смысла в отдельных случаях. В конце концов, если конечной целью является удалением файла, то почему бы не воспользоваться unlink'ом? Тема помечена решенной. |