Объедините абсолютный путь и относительный путь, чтобы получить новый абсолютный путь
m написание программы, в которой один из компонентов должен иметь возможность взять заданный путь (например,/help/index.html
, или же/help/
) и относительный путь, основанный на этом местоположении, (например,../otherpage/index.html
, или жеsub/dir/of/help/
, или жеhelp2.html
) и произвести абсолютный путь, подразумеваемый относительным путем. Рассмотрим следующее дерево каталогов.
/
index.html
content.txt
help/
help1.html
help2.html
Файлindex.html
содержит ссылку вродеhelp/help1.html
, Программа пройдена/
или же/index.html
и объединяет это сhelp/help1.html
получить ./help/help1.html
Точно так же файл/help/help1.html
имеет ссылку../content.txt
откуда программа должна вернуться/content.txt
, Есть ли разумный способ сделать это?
Спасибо. :)
Редактировать: Спасибо Стивену Вайнбергу! Для всехиз будущего, Вот'S код, который я использовал.
func join(source, target string) string {
if path.IsAbs(target) {
return target
}
return path.Join(path.Dir(source), target)
}