2015-08-21 5 views
0

Я создаю символическую ссылку, используя функцию QFile::link(), и она отлично работает, но по дороге я хочу переименовать ссылку. Цель остается неизменной, изменяется только имя ссылки. Есть ли способ сделать это?Переименовать символическую ссылку с Qt

Меня интересуют как решения linux (символические ссылки), так и окна (ярлыки).

ответ

0

После создания связи, попробуйте этот

QFile linkFile("/path/to/the/file/link_filename"); // remember, windows needs .lnk extension 
if (linkFile.exists()) { 
    linkFile.rename("/path/to/the/file/new_linkfilename"); 
} 

Испытано это на Ubuntu 14.04 с Qt 5.5

+0

Я разрабатываю на окна и попытался это, но не работает на окнах с Qt 5.4 – zar

+0

являются вы видите какую-либо ошибку? – ramtheconqueror

+0

Я не обнаружил ошибок, но не переименовал, но первая проблема была 'Qfile :: exists()', которая в случае symlinks проверяет, должен ли целевой файл возвращать true или false. Чем я нахожу, это может быть сопряжено с 'QFileInfo :: isSymlink()', но в конечном итоге оказывается, что мне нужно удалить символическую ссылку, и это работает нормально. – zar

Смежные вопросы