找回密码
 立即注册
收起左侧

qt5 如何打开资源文件?

3
回复
8256
查看
[复制链接]
累计签到:3 天
连续签到:1 天
来源: 2018-3-23 15:22:50 显示全部楼层 |阅读模式
1Qter豆
小弟想通过一个按键打开资源文件中的EXCLE文件,但是提示  ShellExecute 'file::/new/prefix1/Resource/IO_Table.xls' failed (error 2).  错误!!
代码和资源文件有错误么?希望高手给予解答!!!

/*获取IO编码表槽函数*/void MainWindow:n_GetIoTablepushButton_clicked()//{    QString fileexcle;    // F:/qt/Gconfig1_18.3.20/Gconfig_V1/Gconfig/Resource/IO_Table.xls
    fileexcle = ":/new/prefix1/Resource/IO_Table.xls";    openExcel(fileexcle);}/*打开Excle文件*/void MainWindow:penExcel(QString &fileName){
    QFile file(fileName);    if (file.exists())    {        qDebug("file.exists() = 1!");        file.open(QIODevice::ReadOnly);        //QDesktopServices:penUrl(QUrl::fromLocalFile(QFileInfo(fileName).absoluteFilePath()));//        QDesktopServices:penUrl(QUrl::fromLocalFile(fileName));//    }    else    {        qDebug("file.exists() = 0!");    }}

最佳答案

查看完整内容

使用 QDir 先看看自己的工程路径在哪儿,然后再去写相对路径,把文件拷贝到对的位置上~
回复

使用道具 举报

累计签到:742 天
连续签到:1 天
2018-3-23 15:22:51 显示全部楼层
使用 QDir  先看看自己的工程路径在哪儿,然后再去写相对路径,把文件拷贝到对的位置上~
回复

使用道具 举报

累计签到:3 天
连续签到:1 天
2018-3-23 15:23:41 显示全部楼层
/*获取IO编码表槽函数*/
void MainWindow:n_GetIoTablepushButton_clicked()//
{
    QString fileexcle;
    // F:/qt/Gconfig1_18.3.20/Gconfig_V1/Gconfig/Resource/IO_Table.xls

    fileexcle = ":/new/prefix1/Resource/IO_Table.xls";
    openExcel(fileexcle);
}

/*打开Excle文件*/
void MainWindow:penExcel(QString &fileName)
{

    QFile file(fileName);
    if (file.exists())
    {
        qDebug("file.exists() = 1!");
        file.open(QIODevice::ReadOnly);
        //QDesktopServices:penUrl(QUrl::fromLocalFile(QFileInfo(fileName).absoluteFilePath()));//
        QDesktopServices:penUrl(QUrl::fromLocalFile(fileName));//
    }
    else
    {
        qDebug("file.exists() = 0!");
    }
}
回复

使用道具 举报

累计签到:3 天
连续签到:1 天
2018-3-23 15:26:53 显示全部楼层
李良 发表于 2018-3-23 15:23
/*获取IO编码表槽函数*/
void MainWindow:n_GetIoTablepushButton_clicked()//
{

使用绝对路径可以打开IO编码表,使用相对路径就不行了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了