QUrl 和 QFile

2023-11-27 01:08
文章标签 qfile qurl

本文主要是介绍QUrl 和 QFile,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最近设计了一个Qml 文件对话框用来创建文件,然后将这个文件路径传递给C++的extensionplugin去写本地文件。

但是Qml 文件对话框返回了一个QUrl给我,形如:

file:///C:/uuuu.a3


我想要的只是本地文件格式:C:/uuuu.a3

在C++代码中,QUrl类可以帮助做这个转换。

用Url路径构造一个QUrl对象, 然后调用toLocalFile方法去获得一个真正的本地文件路径

例子如下:

void Test::setPath(QString const& path) {QUrl url(path);projectFilePath_ = url.toLocalFile();QFile file(projectFilePath_);if (!file.exists()) {if (!file.open(QIODevice::ReadWrite | QIODevice::Text)) {QString error_msg = file.errorString();return;}QTextStream out(&file);out << "test" << "\n";file.close();  }
}

另外,上面的片段也展示了如何在本地磁盘上用QFile & QIODevice & QTextStream 来创建和写入一个文本文件。


这篇关于QUrl 和 QFile的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/426660

相关文章

Day-04-QFile打开文件的两种方式

一、UI界面设置两个按键,并直接转到槽函数 二、两种代码展示 #include <QFile>#include <QDebug>//此两种方式中调用函数,应包含的头文件void Widget::on_btnReadFile01_clicked()//第一种打开方式{//1. 打开文件QFile file;file.setFileName("D:/QT project/onetext.t

QFile打开文件的两种方式

一、UI界面设置两个按键,并直接转到槽函数 二、两种代码展示 #include <QFile>#include <QDebug>//此两种方式中调用函数,应包含的头文件void Widget::on_btnReadFile01_clicked()//第一种打开方式{//1. 打开文件QFile file;file.setFileName("D:/QT project/onetext.t

QFile QIODevice 实现大文件分包管理

一、效果图 二、代码 #include "filesplit.h"#include <QFile>#include <QFileInfo>#include <QCoreApplication>#include <QDebug>const qint64 BUFF_SIZE_MB = 1024 * 1024;const qint64 SPLITE_SIZE_MB = 100

Qt中文文档-QFile

公众号:Qt那些事儿 QFile Class QFile 类提供读写文件的接口。 属性方法Header:#include qmake:QT += coreInherits:QFileDeviceInherited By:QTemporaryFile 包含继承成员的成员列表废弃的成员 注意: 类中所有函数都是 可重入的。 公共成员类型 类型方法typedefDecoderFn 公

Qt中使用QFile对文本文件的读写

一、思路 1、Qt打开关闭文件用到QFile,包含头文件#include <QFile> 2、文件的读写用标准QTextStream,包含头文件#include <QTextStream> 二、具体实现 //打开fileQFile file(ui->lineEdit_filepath->text());if(!file.open(QIODevice::ReadWrite | QIO

QT中的文件操作QFile、QDataStream、QTextStream、QBuffer

文件操作概述 1、Qt中IO操作的处理方式 (1)、Qt通过统一的接口简化了文件与外部设备的操作方式 (2)、Qt中的文件被看做是一种特殊的外部设备 (3)、Qt中的文件操作与外部设备操作相同 2、IO操作中的关键函数接口 注意:IO操作的本质:连续存储空间的数据读写 3、Qt中IO设备类型 (1)、顺序存储设备:只能从头开始顺序读写数据,不能指定数据的读写位置(串口)

QDir和QFile的使用

1.QDir 使用QFileDialog无法指定打开文件路径,可以利用QDir来指定路径。 例如:程序路径下有一个data文件夹,设置data文件夹为QFileDialog的初始打开路径。 //创建QDir变量,此时dir的路径和程序所在路径一致QDir* dir = new QDir();//判断此路径下是否有data文件夹if(!dir->exists("data")){dir-

C++Qt学习——QFile、QPainter、QChart

目录 1、QFile(文本读写)——概念 1.1、拖入三个控件,对pushButton进行水平布局,之后整体做垂直布局 1.2、按住控件,转到槽,写函数 1.3、打开文件控件 A、首先引入以下两个头文件  B、设置点击打开文件控件之后,首先进入那个文件路径 C、设置要打开的文件 D、打开文件 E、Qstring的构造函数自动转换    F、关闭文件 1.4、关闭文件控件

Qt应用软件【文件篇】Linux平台QFileSystemWatcher与QFile操作GPIO

文章目录 GPIO权限问题使用Root权限运行应用程序更改GPIO文件的权限使用udev规则自动设置权限 监视GPIO与读写GPIO注意事项 GPIO权限问题 在Linux系统中,通过sysfs接口操作GPIO时,经常会遇到权限问题,因为默认情况下,访问/sys/class/gpio目录及其文件需要root权限。这可能会导致在没有适当权限的情况下运行的应用程序无法导出、设置方向或

【QT】QFile读取.txt文本文件时,中文乱码问题(已解决)

目录 0.背景 1.修改方法 0.背景 项目读取一个【.txt】文本文件,显示到下拉框中,其中含有中文,在读取中文相关字段时会出现乱码,代码和显示如下 .txt文本内容如下(显示到下拉框时,我做了分割处理): 实际读取的是【中文test1】 QFile file(filePath);if (!file.open(QIODevice::ReadOnly| QI