• Qt Creator (C++)保存文件


    最近在学习QT Creator,感觉很是头大。可能是刚刚学的原因吧,感觉完全没有C#好,好多东西完全搞不懂。

    C++虽然很灵活,但是也可能是太灵活了,总是搞得人一头雾水。

    一个简简单单的保存文件,就让人费了半天劲。还是先记下来,防止以后用到时忘记。

    一、首先在头文件内加入引用(即 ***.h文件内)

    #include <QListWidget>
    #include <QFileDialog>
    #include <QMessageBox>
    

    二、在头文件内加入方法声明(即 ***.h文件内)

    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        MainWindow(QWidget *parent = 0);
        ~MainWindow();
    
    private:
    void SaveFile();                                        //保存实时信息数据点击事件
    };
    #endif // MAINWINDOW_H

    三、在源文件内添加方法的实现(即 ****.cpp文件内)

    #include "mainwindow.h"
    
    MainWindow::MainWindow(QWidget *parent)
        : QMainWindow(parent)
    {
            DOTO....
    }
    
    MainWindow::~MainWindow()
    {
    
    }
    
    void MainWindow::SaveFile()
    {
        int count = ltwMsg->count ();
            if(count>0)
            {
                QString fileName = QFileDialog::getSaveFileName (this,
                            tr("保存实时数据"),"",tr("日志文件 (*.txt)"));
                if(!fileName.isEmpty ())
                {
                    QFile file(fileName);
                    if(!file.open (QIODevice::WriteOnly))
                    {
                        QMessageBox msgBox;
                        msgBox.setText("保存文件失败!");
                        msgBox.exec();
                    }
                    else
                    {
                        QString qs;
                        for(int i=0;i<count;i++)
                        {
                            QListWidgetItem *item = ltwMsg->item(i);
                            QString s = item->text();
                            qs = qs+s+"
    ";
                        }
                        QTextStream stream(&file);
                        stream << qs;
                        stream.flush ();
                        file.close ();
                    }
                }
            }
    }
  • 相关阅读:
    HTML5中的Range对象的研究
    浅谈移动端开发页面
    你所不了解的javascript操作DOM的细节知识点(一)
    理解Javascript的动态语言特性
    webview与JS的交互
    javascript客户端检测技术
    逐渐深入地理解Ajax
    html5获取地理位置信息API
    Javascript中的Form表单知识点总结
    go语言基础之不同目录
  • 原文地址:https://www.cnblogs.com/rogation/p/3891571.html
Copyright © 2020-2023  润新知