QT5.14 QTextEdit的內(nèi)容保存到文件的方法

環(huán)境

  • Win10 64位
  • QT5.14.1

需求

  • 把QT QTextEdit控件的內(nèi)容,保存到文件中,如日志信息,包括中文

步驟

  • 這里使用按鈕事件,點(diǎn)擊按鈕時(shí),保存文件
2022-03-31_002432.png
  • 文件名基于時(shí)間的后綴

實(shí)現(xiàn)代碼

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 文件夾創(chuàng)建失敗。\r\n");
            return;
        }
    }
    QDateTime date_now = QDateTime::currentDateTime(); //獲取系統(tǒng)現(xiàn)在的時(shí)間
    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");
}

效果

  • 點(diǎn)擊保存后,發(fā)現(xiàn)日志文件存在了指定的目錄下
2022-03-31_002746.png
2022-03-31_002819.png
  • 中文內(nèi)容也成功的保存

小結(jié)

  • 熟悉QT QTextEdit的使用,保存文本框內(nèi)容的方法
  • 熟悉QT 目錄與文件的操作方法
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容