Как я могу объединить абсолютный путь с относительным путем?

Есть ли какая-либо функция в QDir, которая позволяет нам объединить 2 пути (один прямой, а другой относительный)

Например:

путь 1 - C:/home/user1/project/data

путь 2: ../data2/file.txt

результатом должна быть строка, равная C:/home/user1/project/data2/file.txt.

Я старался:

QString finalPath = QDir("C:/home/user1/project/data").filePath("../data2/file.txt");

Но это не работает

Спасибо за помощь


person Maram    schedule 05.01.2021    source источник
comment
Я не нашел функцию до сих пор, но когда я использую результат позже, чтобы открыть файл, он работает, поскольку C:/home/user1/project/data/../data2/file.txt такой же, как C:/home /user1/проект/data2/file.txt   -  person Maram    schedule 05.01.2021


Ответы (1)


Вот решение, которое я нашел:

QString concat= QDir(path1).filePath(path2);
Path = QDir::fromNativeSeparators(concat);

QString finalPath = QDir::fromNativeSeparators(finalPath);
finalPath  = QDir::cleanPath(finalPath);

person Maram    schedule 05.01.2021