将文本文件的名称设置为qt中的变量

Setting the name of a text file to a variable in qt

每次 运行 代码时,我都会将数据导出到 qt 中的文本文件。使用我当前的代码,该文件每次都会被覆盖。我的问题是如何将标题设置为变量,例如 pulse_freq,这样新文件将根据我的变量值创建。我只是无法正确理解语法。

有没有办法将我的文件放在与构建文件相同目录下的文件夹中?我需要我的代码是跨平台的,如果我使用完整路径名,它显然与任何 non-windows OS 不兼容。如果我只是命名文件,文件夹中就会出现太多混乱。相关代码如下:

// Export to data file
        QString newname = QString::number(variables.nr_pulses);
        QString filename = "C:/Users/BIC User/Documents/BIC Placement Documents/QT_data/Data.txt";
        QFile file( filename );

您可以沿用一些东西:

QString s1 = "something";
QString s2 = " else";
QString s3 = s1 + s2;

QString 与重载 operator+ 的连接就像魅力一样。

关于引用您所在的文件夹,而不是对其路径进行硬编码,使用 QDir::currentPath()

因此,您的 filename 作品应如下所示:

QString folder = QDir::currentPath();
QString file = QString::number(variables.nr_pulses); //or whatever else you want it to be
QString extension = ".txt" // or whatever extension you want it to be

QString full_filename = folder + file + extension;

为了不混淆扩展名后的追加字符串,只需将它分成另一个 QString 并像上面那样连接这 3 个元素(文件夹 + 文件 + 扩展名)。