【问题标题】:Plotting data from a text file从文本文件中绘制数据
【发布时间】:2014-12-12 14:17:51
【问题描述】:

这个问题有点长而且复杂。我有一个包含波形参数值的文本文件,需要使用这些值绘制波形。典型波形如下图

我可以使用以下代码搜索文件;

void MainWindow::on_SearchFiles_clicked()
{
    QString fileName1 = QFileDialog::getOpenFileName(this,tr("Open Text File"), "", tr("Text Files (*.txt)"));
         QFile file1(fileName1);
         if(!file1.open(QIODevice::ReadOnly | QIODevice::Text))
             return;

         QTextStream in(&file1);
         while(!in.atEnd()){
             QString line = in.readLine();
         }
}

现在我的问题是如何使用所选文件中的值绘制波形。一个典型的文本文件如下所示

另外,我如何从文本文件中读取其他参数的值并在 qt.xml 中相应地分配它们。即取频率、增益等的值并在 qt 中再次声明它们

【问题讨论】:

    标签: qt plot waveform qfile


    【解决方案1】:

    标头很简单:只需获取第一个 : 的索引并对其进行拆分:

    int index = line.indexOf(':');
    QString key = line.left(index);
    QString value = line.mid(index+1);
    

    然后是 if-else 链将它们分配给正确的字段。

    样本本身可以从line.trimmed().toInt()(或toDouble(),以防您需要十进制值)获取

    【讨论】:

    • 所以如果我想从文件中获取频率值,我输入in int index = line.indexOf('Frequency'); QString key = line.left(index); QString value = line.mid(index+1)
    • 这需要一段时间才能完成,不习惯 C++ 但谢谢。我在正确的道路上。
    猜你喜欢
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-15
    相关资源
    最近更新 更多