Страницы

Поиск по вопросам

вторник, 25 февраля 2020 г.

Получение FAT32 свойств файла

#cpp #fat32


Я хочу получить FAT32 свойства некоторого файла. Я уже разобрался как FAT32 хранит
их и написал структуру для их хранения. Но возник вопрос: как их получить?

Сначала я хотел сделать так:

FILE* in = fopen("H:\\test.txt", "rb");


Но fopen() лишает нас этой информации.

Можно ли каким-либо образом получить FAT32 свойства файла? 
    


Ответы

Ответ 1



С++ абстрагирует от вас свойства файловой системы, так что вам придётся пользоваться системно-специфическими функциями. Для Windows информация, которая вам нужна, находится в структуре WIN32_FIND_DATA. Её можно получить, например, при помощи FindFirstFile. Код из MSDN: #include WIN32_FIND_DATA FindFileData; HANDLE hFind = FindFirstFile(filename, &FindFileData); if (hFind == INVALID_HANDLE_VALUE) { // обработать ошибку return; } else { // можно пользоваться // не забудьте в конце: FindClose(hFind); } Для Linux-платформы аналогичную информацию выдаёт функция stat (2). #include #include struct stat sb; if (stat(argv[1], &sb) == -1) { // обработать ошибку return; } else { // можно пользоваться }

Комментариев нет:

Отправить комментарий