Russian Qt Forum

Программирование => С/C++ => Тема начата: DePeBo от Август 27, 2015, 15:59



Название: QFile название файла
Отправлено: DePeBo от Август 27, 2015, 15:59
Всем привет.
Помучаю еще немного вас своими вопросами  :)

Если кто сможет помочь - буду очень благодарен!

С помощью

Код:
   QStringList filename=QFileDialog::getOpenFileNames(this,
                                                      tr("Open file"),
                                                      "C://",
                                                      "Picture file (*.jpg; *.gif)");

выбираю файл(ы) и вношу его путь в label.

Далее при нажатии кнопки надо скопировать картинку в другую папку.
Это получилось, но фишка в том, что картинка должна сохранить свое название, а copy требует указать путь с новы именем.
Как считать только имя файла без полного имени, что бы копировать примерно так?
Код:
 file.copy("C://Users//dmitry.rikhter//Pictures//СТАРОЕИМЯ.jpg")

Пока код выгляди так:
Код:
    QFile file(ui->label_9->text());
    file.copy("C://Users//dmitry.rikhter//Pictures//Wallpaper.jpg");


Название: Re: QFile название файла
Отправлено: __Heaven__ от Август 27, 2015, 16:11
Можно самому узнать имя старого файла и подставить в новый путь
см. QFileInfo


Название: Re: QFile название файла
Отправлено: DePeBo от Август 27, 2015, 16:18
Можно самому узнать имя старого файла и подставить в новый путь
см. QFileInfo

Хм. Его вместо QFile использовать? Но там нет функции copy =(


Название: Re: QFile название файла
Отправлено: __Heaven__ от Август 27, 2015, 16:50
Код
C++ (Qt)
   QString fileName = QFileInfo(file).fileName();
   QString newDir = "C:/Users/dmitry.rikhter/Pictures/";
   file.copy(newDir + fileName);
 


Название: Re: QFile название файла
Отправлено: DePeBo от Август 27, 2015, 17:17
Код
C++ (Qt)
   QString fileName = QFileInfo(file).fileName();
   QString newDir = "C:/Users/dmitry.rikhter/Pictures/";
   file.copy(newDir + fileName);
 

Спасибо! Очень помог)