-1

コードを実行するたびに、データをqtのテキストファイルにエクスポートしています。私の現在のコードでは、そのファイルは毎回上書きされます。私の質問は、タイトルを pulse_freq などの変数に設定する方法です。この方法では、変数の値に基づいて新しいファイルが作成されます。私は構文を正しく理解できません。

ビルド ファイルと同じディレクトリ内のフォルダーにファイルを配置する方法はありますか? コードをクロスプラットフォームにする必要があり、完全なパス名を使用すると、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 );
4

1 に答える 1

0

行に沿って何かを使用することができます:

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 つの要素を連結します (フォルダー + ファイル + 拡張子)。

于 2015-01-29T11:18:11.140 に答える