Пожалуйста, потерпите меня, пока я пытаюсь объяснить мою проблему
Предположим, структура папок в папке Document моего контейнера загрузки представлена /A/B/C/
, которую я получил через соответствующие API-интерфейсы в ViewController.m.Я портирую проект C ++ для ПК на ios, где однажды программа декодирует входные данные, чтобы получить имя и полный путь к файлу, например, images\background.png
.Поскольку моя программа автоматически находит папку «Документ» через API, она должна создать структуру папок /A/B/C/images\background.png
.Программа, которую я портирую на ios, также содержит функцию создания каталога, которая обнаруживает местоположения /
в строке пути и проверяет, существует ли каталог с таким именем или нет (например, она обнаружит /A
какприсутствует, но /A/B/C/images
будет определено как отсутствующее, так как изображения еще не созданы).Функция создает все вложенные папки в этом дереве, если они еще не существуют.После того, как структура каталогов была создана (/A/B/C/images
), программа делает что-то подобное для создания файла (в нашем примере это background.png):
.
.
.
Create directory structure
fid = fopen(`/A/B/C/images\background.png`, "wb"); // note that full path `/A/B/C/images\background.png` is automatically determined by the program by the time it reaches this point
.
.
file writing code
fclose(fid)
.
.
Моя проблема в том, что после создания папки images
, он создает файл png как images\background.png
вместо создания background.png
внутри папки изображений.Я уже перенес эту программу на android NDK, и она создает файл png внутри папки images
, как и ожидалось, поэтому я могу только предположить, что android считает, что \
указывает на подпапку, а ios - нет.
Что можно сделать, чтобы создать background.png
в подпапке изображений?Любая идея будет оценена.