假设向一个QT的应用程序里添加了资源文件(icon.qrc),然后有在里面添加了下面的内容:

image/DIW.ico

text/1.cpp

看起来向下面的样子:

如果引用上述资源文件里的【1.cpp】,文件的路径应该是“:/text/text/1.cpp”,而不是“:/text/1.cpp”。

为什么?不必追问太多,直接到编译后形成的文件“qrc_icon.cpp”里找答案吧:

看到“qrc_icon.cpp”文件里的内容,有这么几点认识:

① 所添加的各种资源文件,最终被编译成unsigned char,放到字节数组qt_resource_data[]里了;

② 既然这些内容是在编译时已经创建,因此只能做“读”操作,如QFile::open(QIODevice::ReadOnly),而不能做写操作;

③ 每次改动外部被添加资源文件的内容,需要重新编译;

④ 当要使用外部资源文件为文本内容时,注意该文件的编码格式,可以使用常用的文本编辑器notepad++查看当前格式,在QT里要正确显示,或者为系统设置编码格式:

QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));

或者在需要使用的地方,使用明确的编码格式,如下面的QString result字符串:

void MainWindow::readResult(int exitCode)

{

if(exitCode == 0) {

#if defined(Q_OS_WIN32)

QTextCodec* gbkCodec = QTextCodec::codecForName("GBK");

QString result = gbkCodec->toUnicode(p->readAll());

#elif defined(Q_OS_LINUX)

QTextCodec* utfCodec = QTextCodec::codecForName("UTF-8");

QString result = utfCodec->toUnicode(p->readAll());

#endif

QMessageBox::information(this, "dir", result);

}

}

其他如“utf8”格式,总之要和文本文件的编码格式一致。

⑤ 可以将":/"传递到QDir中,枚举其下的文件内容,如下:

QDir d(":/");

qDebug()<

qrc路径_QT中添加的资源文件qrc时的路径问题小结相关推荐

  1. 【转】QT中添加的资源文件qrc时的路径问题小结

    @2019-06-13 [小记] QT中添加的资源文件qrc时的路径问题小结 转载于:https://www.cnblogs.com/skullboyer/p/11014943.html

  2. qrc路径_QT下添加*.qrc(图标Icon、图像)资源

    QT下添加*.qrc(图标Icon.图像)资源 1.最好图像资源等都包含在一个文件夹中,如images: 2.在main函数中强制初始化资源Q_INIT_RESOURCE(filename);如: i ...

  3. qrc路径_Windows下 Qt 资源文件(.qrc)文件 的 编写与应用

    最近遇到一些项目都包含了qrc文件,这个是Qt的资源文件,如果在pro文件中不包含的话,在编译的时候会提示找不到相应资源的错误. 下面说一下手动修改pro和编写qrc文件的方法. 我们直接在命令行下执 ...

  4. opengl png图片 qt_Qt资源文件的格式,并用CMake添加Qt资源文件

    目录 ......QRC文件的写法用CMake添加Qt资源文件添加QRC文件的函数步骤CPP中使用QRC文件使用QRC文件实例程序结果QRC文件CMakeLists.txt文件Dialog.h文件Di ...

  5. qt qrc html,写一个QT资源文件(qrc)

    一个.qrc 文件的例子: images/copy.png images/cut.png images/new.png images/open.png images/paste.png images/ ...

  6. android jar 加入图片,Android动态加载外部jar包及jar包中图片等资源文件

    Android动态加载外部jar包及jar包中图片等资源文件 Android应用程序由Java开发,因此Java中许多实用的特性,在Android中也有体现.动态加载Class,也就是外部jar包,在 ...

  7. linux驱动:TI+DM8127+GPIO(三)之omap_hwmod中添加GPIO资源

    三.[GPIO驱动框架>向omap_hwmod中添加GPIO资源] ***将GPIO硬件信息添加到注册到omap_hwmod_list列表中 Arch/arm/plat-omap/include ...

  8. 在Xcode6中添加prefix.pch文件

    在Xcode6中添加prefix.pch文件 1. 创建prefix.pch文件 2.工程->BuildSettings->prefix END 转载于:https://www.cnblo ...

  9. 编译过程中,termcap.h 文件找不到路径 licli.a终于生成

    编译过程中,termcap.h      文件找不到路径   查看是linux  源码下找不到termcap.h文件 安装了所有关于*cap*的源码包也不起作用 今天终于解决了这个问题,搜termca ...

最新文章

  1. C语言新手写扫雷攻略3
  2. 小白也能看懂:一文学会入门推荐算法库 surprise
  3. [翻译]一步步教你配置SQL SERVER合并复制(五)配置Publisher(上)
  4. rdlc 分页操作和分页统计
  5. js封装函数_JavaScript基础-如何封装函数来改变元素的位置
  6. 为什么只有奇次谐波_关于开关电源谐波失真,这有一份测量分析方法经验分享!...
  7. java if emun_关于java:Enum与If-else
  8. 1、什么是Spring框架,Spring框架有哪些主要模块
  9. [PHP] 算法-邻接矩阵图的广度和深度优先遍历的PHP实现
  10. 如何调用一个windows上的应用程序呢?
  11. Android连接管理的评分机制(WIFI,Ethernet,BT,移动数据
  12. javascript实现blob流、base64,file、base64的互相转换
  13. Java8 stream流分页(手动分页)
  14. 在Oracle中查询表的大小、表的占用情况和表空间的大小
  15. matlab_取整函数
  16. 赵小楼《天道》《遥远的救世主》深度解析(52)丁元英境界和觉悟的知行合一:超越本能的男人,真好汉也
  17. HDU-5705-Clock (数学,思维)
  18. localStorage的使用方法
  19. 嵌入式linux开发,.mak是什么文件
  20. 移动优先和桌面优先的状态

热门文章

  1. UEditor 百度编辑器 工具栏 新增自定义按钮及功能
  2. 金多多简述外围市场涨跌不一
  3. DSMP规范定义的错误码 2012-12-14 09:02阅读(0)
  4. 狸窝刻录软件-附带光盘刻录教程
  5. Deepin 系统使用记录:1. 修改启动项
  6. 全自动化学发光免疫分析仪行业调研报告 - 市场现状分析与发展前景预测
  7. 基于遗传算法的LQR主动悬架控制
  8. canvas 雨滴效果
  9. 软件工程实验报告 一
  10. 安卓开发实现双方比赛计时器