Установка имени текстового файла для переменной в qt

Я экспортирую данные в текстовый файл в 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 );

-1

Решение

Вы можете просто использовать что-то вроде строк:

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 элемента, как указано выше (папка + файл + расширение).

0

Другие решения


По вопросам рекламы [email protected]