在Qt中使用按钮打开文本文件

在Qt中使用按钮打开文本文件,qt,signals-slots,Qt,Signals Slots,Qt中按钮的信号区域和插槽中的内容应该是什么,以便在单击按钮后仅打开文本文件 void MainWindow::on_pushButton_clicked() { .... } 您可以使用任何您想要的来打开文件,比如file、fstream、QFile ecc。您只需调用一个类方法,但在该函数中可以放置所有内容。 您使用的是Qt,因此可以检查Qt的QFile类。可以这样做: void MainWindow::on_pushButton_clicked() { QFile

Qt中按钮的信号区域和插槽中的内容应该是什么,以便在单击按钮后仅打开文本文件

void MainWindow::on_pushButton_clicked()
 {
 ....
 }

您可以使用任何您想要的来打开文件,比如file、fstream、QFile ecc。您只需调用一个类方法,但在该函数中可以放置所有内容。 您使用的是Qt,因此可以检查Qt的QFile类。

可以这样做:

void MainWindow::on_pushButton_clicked()
{

        QFile file( filename );

        if( !file.open( QIODevice::ReadOnly | QIODevice::Text ) )
            QMessageBox::warning(this, tr("Error opening!"), tr("Could not open the file"));

        QTextStream stream( &file );

        while( !stream.atEnd() )
        {
            QString lineText;
            lineText = stream.readLine(); //Read a line of text

            QStringList tokens= lineText.split(" ",QString::SkipEmptyParts); //Take tokens from the line
        }

        file.close();
}

您可以在Qt文档中找到如何读取文本文件的示例:打开文本文件是什么意思?准确描述你想要发生的事情;如果file.openQIODevice::ReadOnly | QIODevice::Text return;虽然file.atEnd{QByteArray-line=file.readLine;process_-lineline;}但错误是以错误的形式出现的:“process_-line”未在此文件中声明scope@Latikprocess_line是一个必须自己编写的伪函数名。用处理文本行所需的任何内容替换该行。我尝试使用您的代码,但它发出警告:Gtk warning**:未能加载类型模块:null。点击按钮后,什么也没发生,什么也没做。这只是一个演示如何读取文本文件的示例。