Я новичок в Qt, одна часть моего проекта перемещает существующий файл в другой существующий каталог? Может кто-то приводит конкретный пример? Я не уверен, должен ли я использовать Qfile :: rename (). Я пытаюсь написать так
QDir::rename("/home/joshua/test.txt","/home/joshua/test/test_c.txt");
но ошибка не может вызвать функцию-член ‘bool QDir :: rename (const QString&const QString&) ‘без объекта
QDir :: переименовать ( «/ дом / Joshua / test.txt», «/ дом / Joshua / тест / test_c.txt»);
^
Извините, ребята, все не так, я задал такой неясный и такой глупый вопрос, мне очень жаль тратить ваше время, я новичок, прежде чем я задал этот вопрос, я действительно действительно не заметил, что этот вопрос был задан раньше, потому что мой уровень слишком низкий. Поскольку я слишком наивен, я больше не могу задавать вопросы, поэтому, пожалуйста, простите меня, задал этот вопрос, я слишком стресс, потому что я стажируюсь в компании, мой проект для меня довольно сложный, так что у меня нет выбора, чтобы сделать такой напоследок хочу сказать спасибо за тех, кто видел мои вопросы раньше.
Согласно документация:
bool QFile :: rename (const QString &новое имя)
Переименовывает файл, указанный в данный момент fileName (), в newName. Возвращает
правда, если успешно; в противном случае возвращает false.
В вашем случае вы должны сделать следующее:
QFile file("/home/joshua/test.txt");
file.rename("/home/joshua/test/test_c.txt");
QDir::rename()
это метод экземпляра QDir
так что тебе нужна QDir
объект для вызова (и этот каталог будет базой для передаваемых имен файлов). Для вашего примера, что-то вроде:
QDir d("/home/joshua");
bool renamed = d.rename("test.txt" , "test/test_c.txt");
Вы хотите использовать возвращаемое значение.
В качестве альтернативы, вы можете использовать QFile::rename()
— каталог по умолчанию для этого является текущим рабочим каталогом процесса.