Потребовалось поработать с файлами в С++. К моему удивлению, это оказалось не просто, в отличие от С#.
Требуется определить по пути, файл это или каталог. На MSDN нашёл как это делается, только их namespace-ы:
using namespace System;
using namespace System::IO;
using namespace System::Collections;
у меня не канают: их просто не видно. Подскажите, что делать?
Обозначаю проблему: требуется кроссплатформенное решение для опроеделения - элемент является файлом или каталогом.
А так не годится?
#include <sys/stat.h>
bool isDir(const char * name)
{
struct stat st;
return (stat(name,&st) == 0) && (S_IFDIR & st.st_mode);
};
bool isFile(const char * name)
{
struct stat st;
return (stat(name,&st) == 0) && (S_IFREG & st.st_mode);
};
Не знаю компилятора, где этого нет :)
Простой сишный (не плюсовый) путь: man stat (если в Windows с чем-то из этого проблемы - там есть другие). Можно попробовать просто открыть как каталог и проанализировать результат (ENOTDIR
, см. man opendir, opendir в Windows).
Из именно плюсовых (но зачем, если есть п.1?) приходит в голову разве что is_directory() (бустовая Filesystem Library).
Виртуальный выделенный сервер (VDS) становится отличным выбором
Для работы с Zip выбрал POCO-библиотекиПытаюсь добавить элементы в архив, добавляется только последний
Скажите пожалуйста, каким образом следует организовывать сокет на Qt таким образом, чтобы он ловил все пакеты, приходящие на указанную пару...