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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 4.78
ichigo9911
0 / 0 / 0
Регистрация: 16.08.2010
Сообщений: 7
#1

Не открывается текстовый файл для чтения (использовал fstream.h) - C++

12.03.2012, 18:06. Просмотров 3302. Ответов 7
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <fstream>
#include <string>
#include <conio.h>
#include <iostream>
 
using namespace std;
void main()
{
    ifstream in("inp.txt");
    string s;
    int k=0;
    while (getline(in, s))
        k++;
    cout<<k;
    getch();
}
Программа должна считать количество строк в текстовом файле. При выполнении программы все время получаю k=0. Текстовый файл inp.txt лежит в папке с программой. Помогите, не пойму в чем дело((
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.03.2012, 18:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не открывается текстовый файл для чтения (использовал fstream.h) (C++):

Некоректный вывод в файл (использовал fstream) - C++
такая функция void Save(DATA **pbeg) { system(&quot;cls&quot;); DATA *pv; //указатель на структуру char filename; ...

Не открывается файл для чтения - C++
Не могу разобраться с кодом , не получается прописать входной фаил , не принимает его .. #include &lt;stdio.h&gt; #include &lt;math.h&gt; ...

Дан текстовый файл (файл для чтения во вложениях) с упрощённым каталогом выставки собак. - C++
ЗАДАНИЕ ПО ЭКЗАМЕНУ ПО ПРОГРАММИРОВАНИЮ НА ЯЗЫКЕ С++ (можно писать и на С. не запрещается) Всё по сабжу ниже. Дан текстовый файл...

Копирование в текстовый файл из потока fstream массива типа char - C++
Всем привет! У меня довольно простой, но очень важный для меня вопрос, ответ на который пока не очевиден... Если я средствами Windows...

Как открыть файл одновременно для чтения и для записи? - C++
Делаю вот так, но ничего не получается.:( std::fstream inOutCredit(&quot;credit.dat&quot;, std::ios::ate | std::ios::binary); if...

Не может открыть файл для чтения - C++
Почему-то после закрытия не открывается файл F2? На последнем шаге программы(99 строка) срабатывает проверка: if(!F2) { cout...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ksan
27 / 27 / 0
Регистрация: 02.11.2010
Сообщений: 370
12.03.2012, 18:09 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
 
int main()
{
  string str;
  ifstream ifile("input.txt");
  int ind=0;
  while(!ifile.eof())
  {
    ifile >> str;
    ++ind;
  }
  ifile.close();  
  cout << ind;
  while(1);
  
  return 0;
}
0
panicwassano
592 / 560 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
12.03.2012, 19:27 #3
ichigo9911 а где проверка, что файл открылся? может он неоткрылся
0
ichigo9911
0 / 0 / 0
Регистрация: 16.08.2010
Сообщений: 7
12.03.2012, 19:59  [ТС] #4
Цитата Сообщение от panicwassano Посмотреть сообщение
ichigo9911 а где проверка, что файл открылся? может он неоткрылся
А как проверить, что он открылся?

Добавлено через 1 минуту
Цитата Сообщение от Ksan Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
 
int main()
{
  string str;
  ifstream ifile("input.txt");
  int ind=0;
  while(!ifile.eof())
  {
    ifile >> str;
    ++ind;
  }
  ifile.close();  
  cout << ind;
  while(1);
  
  return 0;
}
Программа циклится в while.
0
panicwassano
592 / 560 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
12.03.2012, 20:33 #5
Цитата Сообщение от ichigo9911 Посмотреть сообщение
А как проверить, что он открылся?
C++
1
2
3
4
if(!ifile)
{
    cerr << "Error" << endl;
}
0
ichigo9911
0 / 0 / 0
Регистрация: 16.08.2010
Сообщений: 7
13.03.2012, 07:01  [ТС] #6
А где должен лежать файл, если не указывать к нему полный путь? (Например, ifstream ifile("input.txt")
0
-=ЮрА=-
Заблокирован
Автор FAQ
13.03.2012, 15:03 #7
ichigo9911, с твоим самым первым кодом всё ок, никого не слушай. По твоему последнему посту делаю вывод что твой файл лежал не в каталоге проекта, положи файл input.txt рядом с срр-ником программы и запусти алгоритм на запуск, всё будет хорошо работать
0
Somebody
2789 / 1603 / 145
Регистрация: 03.12.2007
Сообщений: 4,193
Завершенные тесты: 1
13.03.2012, 18:31 #8
C++
1
2
3
ifstream f("input.txt");
f >> noskipws;
cout << count(istream_iterator<char>(f), istream_iterator<char>(), '\n') + 1;
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.03.2012, 18:31
Привет! Вот еще темы с ответами:

Как удалить файл только для чтения? - C++
Пишу функцию поиска файлов в указанной директории: void Delfil(char temp, int atrb) { if(atrb) { int key=0; ...

Дан текстовый файл, содержащий целые числа. Определить в каждой четной строке максимальное число и записать результаты в новый текстовый файл - C++
Дан текстовый файл, содержащий целые числа. Определить в каждой четной строке максимальное число и записать результаты в новый текстовый...

Как открыть файл для чтения в БИНАРНОМ режиме? - C++
Друзья! Файл, который надо открыть БИНАРНЫЙ, в нём два байта. Содержание файла 33 20 00 00 имя &quot;input&quot; Вот по логике вещей пра...

Как создать один файл для чтения и записи одновременно? - C++
Пробовал перезапись, но содержимое файла терялось while (file1.hasNext()) { file2.write(file.nextInt() + &quot; &quot;); ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
13.03.2012, 18:31
Ответ Создать тему
Опции темы

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