Чтение из файла на с++.

Статус
В этой теме нельзя размещать новые ответы.

disker

Гуру форума
Регистрация
28 Авг 2007
Сообщения
626
Реакции
67
Решил немного подучить С++, но уже давненько не программировал. (А видеокурсов для новичков никак не могу нормальных найти. Когда года 2 назад искал на Делфи было полно, а по С++ для новичков тяжело что-то хорошее найти :( )

В общем, помогите советом как организовать следующее. Есть файл с данными (набор из 600 чисел [0 .. 36] ) . Нужно эти данные , количество которых 24*25 занести на форме в таблицу как сетка в Екселе, для последующей их обработки (в том числе и занесение в матрицу).. :)
 
В опу курсы, рекомендую книженцию Шилдта по плюсам. Там все по полочкам разложено.
Непонятно условие - каким образом отделены числа друг от друга?
 
Вот пример входного файла где будут данные :

Книженцию скачал , иду читать, но не старовата она( за 2003-й год) ничего не поменялось в плюсах с того времени?

P.s. программирую в С++ Builder XE если это чем-то поможет...
 

Вложения

  • data.txt
    1,6 KB · Просмотры: 11
Посмотрел книгу, к сожалению понял, что мне нужно попроще литературу, вплоть до самых азов, начиная от синтаксиса. Я не программист по специальности, а инженер, поэтому для меня слишком много непонятного в книге Шилдта. Не говорю, что она плохая, но мне кажется, что с неё не стоит начинать, а ею уже пользоваться тогда, когда есть хотя бы небольшие навыки в программировании на С++. :) Буду искать что-то попроще и желательно какой-то курс по С++ Builder XE было бы не плохо найти для начинающих...
 
Код:
#include <fstream>
int main()
{
  const int ROWS=24, COLS=25;
  int iMatrix[ROWS][COLS];
  fstream f("file.txt", ios::in);
  for(int i = 0; i < ROWS; i++)
    for(int j = 0; j < COLS; j++)
      f >> iMatrix[i][j];
  f.close();
  return 0;
}
 
ShoxMaster спасибо, а как вывести это на форму в таком же виде как в файле (как таблица), только чтобы как в сетке в екселе. Знаю что можно так сделать, но не могу найти какой компонент или оператор за это отвечает в С++ Builder XE ?

P.s. Кстати почему - то получаю ошибку на строке с return 0; :( в самом конце... она там нужна ?
 
ShoxMaster спасибо, а как вывести это на форму в таком же виде как в файле (как таблица), только чтобы как в сетке в екселе. Знаю что можно так сделать, но не могу найти какой компонент или оператор за это отвечает в С++ Builder XE ?
Вроде TcxGrid, нашёл ещё Для просмотра ссылки Войди или Зарегистрируйся
И зря сразу за builder взялись, нужно было начинать с консольки на Visual Studio или подобному IDE.

P.s. Кстати почему - то получаю ошибку на строке с return 0; :( в самом конце... она там нужна ?
Тип функции, которая есть точкой входа тоесть main - int, значит нужно возвращать значение(в некоторых компиляторах не нужно, т.к. значение 0 возвращается по-умолчанию).
 
В общем по поводу return 0; посмотрел видеоурок, где как раз о ней говорилось и там было сказано, что не критично если её не будет, но её наличие говорит о хорошем стиле программирования и отсутствие может стать причиной каких-то ошибок. В связи с этим отказался от С++Builder и установил Microsoft Visual Studio 10.0 Вроде автор видеоуроков сказал, что если для работы с кодом то лучше его установить, а если больше предпочтение красоте и графике хочешь в свoих программах отдать , то надо брать С++Builder.
 
А кто-нибудь может подсказать как по маске делать импорт чисел в матрицу? Для этого нужно устанавливать какие-то дополнительные компоненты как в Делфи или можно обойтись штатными средствами ? :)
 
Вручную... Брать строку, найти разделители чисел (пробел, таб...), брать подстроку до разделителя (SubString) - получиться строка содержашую число и через StrToInt переобразовать и передать на числовую матрицу... Все это циклично...
Или использовать fscanf... Но как использовать не знаю... Не работаль с ним...
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху