Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.97/68: Рейтинг темы: голосов - 68, средняя оценка - 4.97
-8 / 0 / 0
Регистрация: 27.02.2019
Сообщений: 43

Чтение строк из файла в переменную и действия с ней

12.03.2019, 16:02. Показов 13707. Ответов 40

Студворк — интернет-сервис помощи студентам
Здравствуйте, мне необходимо произвести чтение из первой строки двух параметров в две переменные.
Затем читать строки в переменную str, пока не eof.
Затем эту строку нужно преобразовать в массив строк содержащий подстроки разделенные tab, чтоб потом эти числа в инты перевести. Когда я пытался это делать в вижуале, то пробовал сделать двумерный вектор, но не вышло, вот мой код из вижуала.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include "stdafx.h"
#include "stdio.h"
#include <iostream>
#include <string> //подключаем строки
#include <fstream> //подключаем файлы
#include <sstream>
#include <vector>
 
using namespace std;    //используем стандартное пространство имен
 
int main()
{
 setlocale(LC_ALL, "rus");
 int rx,ry = 0;
 string str;    // сюда будем считываться строки из файла
 
 ifstream file ("test.txt");    //создаем объект класса ifstream
 
 if (!file.is_open())   // (метод) если файл не открыт
        cout << "Файл не может быть открыт!\n";        // сообщить об этом
    else
    {
    file >> rx;
    file >> ry;
    cout << "rx = " << rx << endl;
    cout << "ry = " << ry << endl;
    cout << "str = ";
        while(getline(file, str))   // пока не достигнут конец файла класть очередную строку в переменную (str)
    {
        cout << str << endl;        // выводим на экран ( для проверки правильности считанных данных)
 
    vector <vector <string> > VV;
    string ch; // будет содержать текущее число из строки
    stringstream lst(str);
    vector <string> array;
    while(lst >> ch)
    {
        array.push_back(ch); //первый vector
    VV.push_back(array);
    }
    for( int i=0; i < VV.size(); i++)
    {
        for( int j=0; j < VV[i].size(); j++)
        //cout <<" Ch #" << i + 1 << " : " << array[i] << endl;
            cout << VV[i][j] << " ";
      cout << endl;  
    }
    }
    file.close();
    return 0;
 }
}

я пытался сделать эту программу в вижуале, но мне всё равно в итоге пришлось бы её переделывать под Qt (использовать qtшные функции и т.д.)
Как мне реализовать подобное задание в Qt с использование QFile, QString, QStringList, QTextStream и другие.
Вот мой набросок из Qt.
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int main(int argc, char *argv[])
{   
    QFile file("mtrh.txt");
     if(file.open(QIODevice::ReadOnly |QIODevice::Text))
        {
            //читаем строку
            QString str = file.readLine();
            //Делим строку на слова разделенные пробелом
            QStringList lst = str.split(" ");
            QTextStream in(&test_file);
            while(!file.atEnd())
            {
             strings += in.readLine().split(" ");
             test_file.close();
            }
          }
        else
        {
            qDebug()<< "don't open file";
        }
Пример файла:
10 10
100 200 300 500
1000 500 150 700
2100 1010 1200 400
Знаю, что сумбурно и наверное не понятно звучит задание, просто я запутался в с поиском аналогов функций в Qt и решил спросить знающих людей.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.03.2019, 16:02
Ответы с готовыми решениями:

Чтение строк из файла в переменную (ifstream)
Пожалуйста помогите, не пойму как из текстового файла сохранить строки в переменную типа массив строк. Внутри цикла while(!ssid.eof()){}...

Чтение строк текста из файла и запись каждой в свою переменную
В файле input.txt две строки, необходимо чтобы прога прочитала первую строку и записала ее в переменную LineA, а вторую строку в переменную...

Чтение матрицы из файла и действие над ней
Всем привет! В институте дали задание решить, которое заключается а следующем: Найти сумму элементов на верхней и нижней диагоналях,...

40
-8 / 0 / 0
Регистрация: 27.02.2019
Сообщений: 43
19.03.2019, 10:53  [ТС]
Студворк — интернет-сервис помощи студентам
nd2, Анна по жизни, alexu_007, Спасибо вам, в большей степени конечно nd2, за советы, напутствия и реализации. Всё заработало как надо + более менее стало понятно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.03.2019, 10:53

Куда можно сохранить переменную из файла, чтобы потом к ней обратиться?
Всем привет! По заголовку кто-то заскочил и думает: &quot;Что за тупой вопрос?&quot;, но на самом деле не всё так просто! :D У меня есть парсер, с...

Перенос строк из таблицы одного файла в таблицу другого файла с проверкой на наличие в ней записей
Добрый день. Помогите пожалуйста написать код для переноса строк из таблицы одного файла в таблицу другого файла. Есть 2 файла:...

Чтение значений из файла в переменную
Дан файл input.txt в нем 3 значения{1,2,3} Как сделать так, чтобы в переменные a,b,c записывались соответствующие значения(a=1;b=2;c=3)?

Чтение строки из файла в переменную
Здравствуйте. Т.к. в написании bat файлов нет опыта, необходима помощь. В определенном каталоге по условию появляется текстовый файл...

Чтение из файла и запись в переменную
всем привет) Недавно начал изучение чтение и запись из/в файлы. Вот настряпал небольшой код: #include &lt;iostream&gt; #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
41
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru