Функция Opendir с путем равна NULL? - PullRequest
0 голосов
/ 29 марта 2019

Я пытаюсь очистить файлы скриншотов по пути скриншотов Unreal Engine 4. Я гуглил, затем нашел решение, чтобы очистить все файлы по пути. Метод адрес ниже. Я попробовал самый полезный ответ, затем получил NULL ptr для функции opendir ("..."). Я не уверен, что путь неверен из-за формата. Я бы хотел, чтобы кто-нибудь помог мне найти правильный путь в функции "opendir". Спасибо.

Как удалить все файлы в папке, но не удалить папку, используя стандартные библиотеки NIX?

/ * Путь к папке (путь, который мне нужен для функции opendir):
D: \ Проекты Unreal Engine \ OutSourcingSuits \ Сохраненные \ Скриншоты \ Windows * /

/ * Вот код cpp в пути:
D: \ Проекты Unreal Engine \ OutSourcingSuits \ Source \ OutSourcingSuits * /

#include <stdio.h>
#include <dirent.h>

void UNetworkMgr::ClearFolder()
{
    char *folderpath = "/Saved/Screenshots/Windows";

    // These are data types defined in the "dirent" header
    DIR *theFolder = opendir(folderpath);
    struct dirent *next_file;
    char filepath[256];

    while (theFolder !=NULL && (next_file = readdir(theFolder)) != NULL)
    {
        // build the path for each file in the folder
        sprintf_s(filepath, "%s/%s", folderpath, next_file->d_name);
        remove(filepath);
    }
    closedir(theFolder);
    return;
}
...