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

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

本文关键字:设置 变量 文件 qt 文本      更新时间:2023-10-16

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

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

// 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 个元素(文件夹 + 文件 + 扩展名)。