QT5.14 QTextEdit的内容保存到文件的方法

环境

  • Win10 64位
  • QT5.14.1

需求

  • 把QT QTextEdit控件的内容,保存到文件中,如日志信息,包括中文

步骤

  • 这里使用按钮事件,点击按钮时,保存文件
2022-03-31_002432.png
  • 文件名基于时间的后缀

实现代码

void serial::on_pbBtn_save_log_clicked()
{
    QString log_info = ui->textEdit_logger->toPlainText();
    QByteArray log_ba = log_info.toLocal8Bit();
    ota_log(log_ba.data(), log_ba.length());
}

void serial::ota_log(char *msg, quint32 len)
{
    QString log_path = "logs";
    QDir dir;
    if (!dir.exists(log_path))
    {
        bool res = dir.mkpath(log_path);
        if (res != true)
        {
            ui->textEdit_logger->setPlainText("【提示】log 文件夹创建失败。\r\n");
            return;
        }
    }
    QDateTime date_now = QDateTime::currentDateTime(); //获取系统现在的时间
    QString str_now = date_now.toString("yyyy_MM_dd_hh_mm_ss");
    QString filename = log_path + "\\" + "ota_" + str_now + ".log";
    QFile file(filename);
    file.open(QIODevice::ReadWrite|QIODevice::Text);
    file.write((const char *)msg,len);
    file.close();
    ui->textEdit_logger->insertPlainText("【提示】日志保存成功。\r\n");
}

效果

  • 点击保存后,发现日志文件存在了指定的目录下
2022-03-31_002746.png
2022-03-31_002819.png
  • 中文内容也成功的保存

小结

  • 熟悉QT QTextEdit的使用,保存文本框内容的方法
  • 熟悉QT 目录与文件的操作方法
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容