Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ciao
0 / 0 / 0
Регистрация: 25.12.2008
Сообщений: 28
#1

считать строки из файла и вывесте конечный результать.. - C++

05.05.2009, 15:10. Просмотров 812. Ответов 1
Метки нет (Все метки)

Мне надо найти количество строк, заполенных значениями для матриц. Вот пример текстового файла:
Код
//matrice GHSERp pour ferrite
//temperature i[Fe/Cr] j[C/Va] l[l'ordre] valeur
0 1 0 0 -99.808 //Мне нужно считать строки между коментариями
0 1 0 1 0
0 1 0 2 3.6e10
0 1 0 3 -7.929e8
0 1 0 4 2701850
0 1 0 5 355037.737
0 1 0 6 669.67
0 1 0 7 0.00047745
0 1 0 8 -1.47721e-6
Код
//matrice L1 pour ferrite (Fe-Cr-C/Va)
//temperature i[Fe/Cr] j[C] k[Va] l[l'ordre] m[l'ordre pour polynom] valeur
0 0 1 0 0 1 -1250000
0 0 1 0 0 2 667.7  
1 0 1 0 0 1 -1250000
1 0 1 0 0 2 667.7
Я пробовала написать маленькую функцию:
Код
int Gibbs::readstr(FILE *f,char *str)
{
 int nb_lignes = 0;
 do
  {
     char * ok = fgets(str, 256, f);nb_lignes++;
     if (!ok)    return 0;
  } while (str[0] == '/' || str[0] == '\n');
    return nb_lignes;
}
И вставить ее непосредственно в раздел считывания значении для какой-нить матрицы:
Код
   if (nm == 5)
    {
      int tmax = 0, imax = 0, jmax = 0, lmax = 0;
      int t , i , j , l;
      double v = 0.;
      nb_lignes = readstr(fp,str); printf("%i\n",nb_lignes);
      sscanf(str, "%d %d %d %d %lf", &t, &i, &j, &l, &v);
      GHSERp(t,i,j,l) = v;
      wasNumbers = true;
    }
Не работает...Помогите пожалуйста создать такую функцию, что бы работало

Добавлено через 43 минуты 42 секунды
Счтивать начинает со второй строчки и перескакивает на 4. Читает через одну.. Почему???
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.05.2009, 15:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос считать строки из файла и вывесте конечный результать.. (C++):

Как считать строки из файла, если там больше одной строки? - C++
Как считать строки из файла в массив. Если в файле одна строка, то нет проблем, но если несколько, то при использовании функции fgets ...

Считать строки из файла, найти строки на определённую букву - C++
По заданию нужно вывести данные студентов, чьи фамилии начинаются на А и математику сдали на 8 или 9. Проблема в поиске фамилии на А,...

Считать строки из файла в массив ++ - C++
Напишите программный код для считывания строк файла в элементы массива. Заранее спасибо!

Считать длину строки текстового файла - C++
Есть квадратная матрица, которая заполняется данными из файла. Если размерность матрицы больше, чем объём данных в файле, то нужно...

Считать из файла 2 строки с числами в 2 контейнера set - C++
Здравствуйте! Помогите, как считать из файла последовательно 2 строки с числами? Например файл такой: 56 78 4 2 2 33 1 45 Нужно...

Считать из текстового файла только определенные строки - C++
считать из текстового файла например строки с 6 по 9, или с 3 по 19 и записать их в другой текстовый файл

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Шерсть-На-Носу
40 / 40 / 1
Регистрация: 30.01.2009
Сообщений: 168
06.05.2009, 12:46 #2
Функция readstr в порядке, работает как надо. Посмотри внимательно, может ты используешь ее не в одном месте?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2009, 12:46
Привет! Вот еще темы с ответами:

Считать данные из файла от одной строки до другой - C++
Всем привет. Задача такая: есть текстовый файл, в котором существует двумерный массив, записано все в файле так Step number= 1 ...

Считать строки файла и поместить в динамический массив строк - C++
Ребята помогите. Нужно считать с файла, в котором 1 строка - 1 слово, строки и поместить их в динамический массив строк типа char...

Считать строки из файла, изменить и записать в другой файл - C++
Добрый день. Есть входящий файл: Лицевой счёт 1010047078 показания счётчика (9243) 1010029116 6036 Ао НЭСК 1010004047 167490 ...

Считать строки из файла, и вывести те что начинаются с тире - C++
Суть задачи, необходимо считать из файла строки вывести на экран те из них, которые начинаются с тире, перед которым могут быть только...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru