首页 > 其他分享 >【Qt】Qt-文本文件读写

【Qt】Qt-文本文件读写

时间:2024-01-29 18:35:30浏览次数:21  
标签:Qt 读写 current 文本文件 QString file arg QIODevice total

 

读取文本文件(编码UTF8)


QString filename = "";
QFile file(filename);
if (!file.open(QIODevice::Text | QIODevice::ReadOnly))
{
    log("Open file failed!");
    return;
}

QTextStream in(&file);
in.setCodec("UTF-8");

QString line = in.readLine();

while (!line.isNull())

{

    // DO

    line = in.readLine();

}

file.close();







写文本文件


QFile file(exportFile); 

if (!file.open(QIODevice::Text | QIODevice::WriteOnly | QIODevice::Truncate)) 

    // 打开文件失败 

    file.close(); 

    MSGBOX_INFO("Dictionary", QString("Open %1 failed!").arg(exportFile), ""); 

    return; 

}

 

QTextStream out(&file);
out.setCodec("UTF-8");

// 输出表头
out << m_headlist.join(",") << endl;

QMap<int, int> idColumnMap;

int total = totalResults.size();
int current = 0;

for (auto item : totalResults)
{
QStringList itemLst;
item.toLst(itemLst);

out << itemLst.join(",") << endl;

current++;
if (current % 10 == 0)
{
    QString process = QString("Export All: %1/%2, %3%").arg(current).arg(total).arg(current / (total+1));
    ui->label_15->setText(process);

    QCoreApplication::processEvents();
}
}

QString process = QString("Export All: %1/%2").arg(current).arg(total);
ui->label_15->setText(process);

file.close();

标签:Qt,读写,current,文本文件,QString,file,arg,QIODevice,total
From: https://www.cnblogs.com/hely-ljm/p/17995094

相关文章

  • C++ Qt开发:运用QJSON模块解析数据
    Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍如何运用QJson组件的实现对JSON文本的灵活解析功能。JSON(JavaScriptObjectNotation)是一种轻量级......
  • __iomem读写寄存器偏移是4 unsigned long 读写寄存器偏移是1
     __iomem读写寄存器偏移是4:   unsignedlong读写寄存器偏移是1: ......
  • Qt QtConcurrent::run()函数的两种写法
    第一种,使用lambda表达式1QFuture<void>future=QtConcurrent::run([=](){2//Codeinthisblockwillruninanotherthread3});4...第二种,使用成员函数调用QByteArray的成员函数split()1//call'QList<QByteArray>QByteArray::split(charsep)c......
  • QT Creator12.0.1运行普通C/C++程序时候没有控制台输出
    问题:QTCreator12.0.1运行普通C/C++程序时候没有控制台输出菜单栏选择:[编辑]->[设置],按下图依次设置。启用终端输出,还有去掉内部终端输出的选项运行后控制台窗口正常弹出......
  • Qt/C++音视频开发64-共享解码线程/重复利用解码/极低CPU占用/画面同步/进度同步
    一、前言共享解码线程主要是为了降低CPU占用,重复利用解码,毕竟在一个监控系统中,很可能打开了同一个地址,需要在多个不同的窗口中播放,形成多屏渲染的效果,做到真正的完全的画面同步,在主解码线程中切换了播放进度,所有关联的同一个解码线程的播放窗体也会立即同步画面,使得感官上看起来......
  • Qt 深度解析QMap与QHash
    一、QMap深度解析1、QMap是一个以升序键顺序存储键值对的数据结构(1)QMap原型为classQMap<K,T>模板(2)、QMap中的键值对根据key进行了排序(3)、QMap中的key类型必须重载operator<(小于操作符)2、QMap使用实例一 3、QMap使用实例二4、QMap的注意事项(1)、通过key获取Value时......
  • STM32CubeMX教程27 SDIO - 读写SD卡
    1、准备材料正点原子stm32f407探索者开发板V2.4STM32CubeMX软件(Version6.10.0)keilµVision5IDE(MDK-Arm)ST-LINK/V2驱动逻辑分析仪nanoDLA野火DAP仿真器XCOMV2.6串口助手2、实验目标使用STM32CubeMX软件配置STM32F407开发板SDIO读写4线SD卡,实现轮询方式读写SD卡、以中......
  • CLion搭建Qt开发环境,并解决目录重构问题(最新版)
    序言Qt版本不断更新,QtCreator也不断更新。在Qt4和Qt5时代,我一直认为开发Qt最好的IDE就是自带的QtCreator,可是时至今日,到了Qt6时代,QtCreator已经都12.0.1版本了,不仅没变的更好用,反而变得更难用了。一方面可能是我被JetBrains全家桶和各种AI代码提示插件给惯坏了,另一方面也可能是开......
  • STM32CubeMX教程26 FatFs 文件系统 - W25Q128读写
    1、准备材料正点原子stm32f407探索者开发板V2.4STM32CubeMX软件(Version6.10.0)keilµVision5IDE(MDK-Arm)ST-LINK/V2驱动野火DAP仿真器XCOMV2.6串口助手2、实验目标使用STM32CubeMX软件配置STM32F407开发板使用FatFs中间件通过SPI通信协议对W25Q128芯片进行读写等操作3......
  • 【QT】选择和打开中文路径文件目录
    场景:Qt选择和打开目录,支持中文、空格等实现:#选择目录QStringstrDir="D:\\";QStringqslPath=QFileDialog::getExistingDirectory(this,"",strDir);ui->l_path->setText(qslPath);#打开目录QStringpath=ui->l_path->text();if(!path.isEmpty())QDe......