Как получить доступ к файлу с только filepath в виде строки в Qt / C ++? - PullRequest
0 голосов
/ 07 июня 2019

В настоящее время у меня есть путь к файлу, к которому я хочу получить доступ в виде строки, но я не уверен, есть ли в Qt функция, позволяющая получить доступ к этому файлу только с помощью пути к файлу.

IЯ сохраняю путь к файлу в INI-файл, и я хочу использовать этот путь к файлу, чтобы открыть файл JSON, который является частью этого пути.Это то, что я пробовал до сих пор - код будет идти в openFile ()

void saveFileLocation(QString filename) 
{
    QSettings *settings = new QSettings(Ve::Widgets::SettingsWindowWidget::INI_FILE, QSettings::IniFormat);
    QDir dir;
    QString filePath = dir.filePath(filename);
    settings->setValue("projectFile", filePath);
    on_menuRecent_Files_aboutToShow(filePath);
}
void openFile(QString filepath) 
{   
    *insert code here*
}
void on_menuRecent_Files_aboutToShow(QString filePath)
{
    QAction* openAction = ui->menuRecent_Files->addAction(filePath);
    connect(openAction, SIGNAL(triggered()), this, SLOT(openFile(filePath)));


}

Я хочу реализовать опцию действия, которая имеет текст пути к файлу, и при нажатии открывает файлчто я хочу получить доступ.Есть ли функция Qt, которая позволяет вам это делать?

1 Ответ

1 голос
/ 08 июня 2019

Попробуйте:

  • Чтобы открыть приложение, связанное с системой по умолчанию:
void openFile(QString filepath) 
{   
    QDesktopServices::openUrl(QUrl::fromLocalFile( filepath ));
}
  • Чтобы открыть приложение:
void openFile(QString filepath) 
{   
    // open with notepad
    QProcess::execute("notepad \""+ filepath +"\"");
}

Надеюсь, это поможет вам.

...