Как используя QFileDialog загрузить в массивы численные данные в Qt Creator

158
30 декабря 2021, 11:00

Создал диалоговое окно для выбора файла .txt. В этом файле будут находится данные для построения графика X и Y. Как сделать так чтобы при выборе файла числа загружались в массивы?

void MainWindow::on_action_3_triggered()
{
     QString fileName =QFileDialog::getOpenFileName(this,"Открыть файл","C:/Users",QString::fromUtf8("Текстовые файлы(*.txt)"));
}
Answer 1

Вы не указали формат данных файла, для того, чтобы начать с ними работать простейшая схема такая: открыть файл, прочитать его данные (как вариант, в приведенном ниже примере, читаем файл целиком), обрабатываем прочитанные данные и закрываем файл:

QFile file(fileName);
//открываем файл с одновременной проверкой открытия
if (file.open(QIODevice::ReadOnly)) {
    //если файл успешно открылся, читаем данные файла в data
    QByteArray data = file.readAll();
    //делаем что-то с прочитанными данными 
    /* (ТУТ мы только выводим эти данные, а что делать ВАМ, 
    зависит от формата данных, который вы не указали в вопросе)*/
    qDebug() << "DATA:" << data;
    //закрываем файл
    file.close();
}

Начните с этого и постарайтесь разобраться самостоятельно что делать с data. Готов помочь в разборе данных, если после многократных самостоятельных попыток не разберетесь

READ ALSO
Поиск в бинарном дереве

Поиск в бинарном дереве

Нужно проверить есть ли элемент Х в бинарном деревеМоя функция Find работает рандомно, то находит то не находит (хотя он есть)

111
Unreal Engine 4 не видит Visual Studio 2019

Unreal Engine 4 не видит Visual Studio 2019

Можно ли его как то указать в настройках движка (как в Unity)?

199
как конвентировать текст в цифровой код?

как конвентировать текст в цифровой код?

Есть ли стандартная библиотека или готовое решение, которая может конвертировать символы например как делает этот сайтhttps://allcalc

191