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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 29, средняя оценка - 4.72
^Tecktonik_KiLLeR
1159 / 441 / 22
Регистрация: 23.06.2009
Сообщений: 6,235
Завершенные тесты: 1
#1

Как осуществить чтение файла и подсчет строк? - C++

30.08.2009, 23:05. Просмотров 3520. Ответов 22
Метки нет (Все метки)

видимо на форуме уже обсуждалась такая тема,но я все такие не смог найти то что мне надо,так что заранее извиняюсь за то что поворяю все...есть код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int main()
  {
 
FILE *f;
f=fopen("c://test.txt","w");//название текста и режим .w-write
 
 
int a=strlen(f);
cout<<"\n"<<a<<"\n";
 
fclose(f);
      system("PAUSE");
 
  return 0;
  }
наверно все ясно уже....надо вывести сколько символов находится в строке...но при компиляции кричит на
Warning 1 warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. d:\projects\proba\proba\proba.cpp 21 proba
Error 2 error C2664: 'strlen' : cannot convert parameter 1 from 'FILE *' to 'const char *' d:\projects\proba\proba\proba.cpp 24 proba
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.08.2009, 23:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как осуществить чтение файла и подсчет строк? (C++):

Осуществить вывод строк из файла, используя массив указателей на эти строки - C++
&quot;Написать программу, которая считывает текст из файла и выводит на экран только предложения, не содержащие запятых. &quot; вывод надо...

Осуществить сортировку текстового файла по длине строк циклическим слиянием/разделением - C++
Осуществить сортировку текстового файла циклическим слиянием/разделением (по длине строк). Файл читается группами по n строк в динамический...

Как заполнить файл и как осуществить посимвольное чтение - C++
решила задачу с файлами на высоком уровне, а нужно на низком, помогите плиз!!!не могу разобраться как заполнить файл и как осуществить...

Чтение строк из файла - C++
Мне нужно читать строки из фалйа разной длинны тоесть может быть вобще пустая строка. нужно именно c++ не c

Чтение строк из файла - C++
Есть файл с 10 строками, необходимо вывести на экран четные строки ifstream file(&quot;C:\\1.txt&quot;); for (int i = 0; i &lt; 5; i++) { ...

Чтение строк из файла - C++
struct Questions { char quest; }QuestList; void main() { int numQuest=0; FILE *fp; fp = fopen(&quot;voprosy.txt&quot;,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
^Tecktonik_KiLLeR
1159 / 441 / 22
Регистрация: 23.06.2009
Сообщений: 6,235
Завершенные тесты: 1
31.08.2009, 00:09  [ТС] #16
Gravity, гигантское спасибо!))))))
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
31.08.2009, 00:14 #17
Чтобы подавить дурацкий warning нужно определить где-нибудь этот _CRT_SECURE_NO_WARNINGS.
Microsoft всех нагло заставляет использовать все эти fopen_s() функции.
Они не стандартны насколько я знаю и существуют только в Visual Studio 2005 и выше.
easybudda
Модератор
Эксперт CЭксперт С++
9530 / 5523 / 932
Регистрация: 25.07.2009
Сообщений: 10,602
31.08.2009, 00:19 #18
А зачем два цикла делать? Оно же так в 2 раза дольше считать будет...
Кстати, если считаете символы и строки, точно \n за символ должно считаться?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
long int symbols, rows;
int c;
FILE *fp;
 
/* открыть файл, ругнуться, если неудачно */
 
symbols = 0L;
rows = 0L;
while ( (c = getc(fp)) != EOF ) {
    if ( c == '\n' )
        rows++;
    else
        symbols++
}
Ну или, если и \n за новый символ считать:
C
1
2
3
4
5
while ( (c = getc(fp)) != EOF ) {
    symbols++;
    if ( c == '\n' )
        rows++;
}
mirso
525 / 343 / 17
Регистрация: 05.04.2009
Сообщений: 709
31.08.2009, 01:17 #19
МедведЪ,
Цитата Сообщение от МедведЪ Посмотреть сообщение
пишет что 0 строк
а сколько у тебя в файле "c://test.txt" должно было их быть?
Цитата Сообщение от МедведЪ Посмотреть сообщение
f=fopen("c://test.txt","r");
easybudda
Модератор
Эксперт CЭксперт С++
9530 / 5523 / 932
Регистрация: 25.07.2009
Сообщений: 10,602
31.08.2009, 01:27 #20
Цитата Сообщение от easybudda Посмотреть сообщение
C
1
2
3
4
5
6
7
...
while ( (c = getc(fp)) != EOF ) {
    if ( c == '\n' )
        rows++;
    else
        symbols++
}
C
1
2
    else
        symbols++;
Точку с запятой пропустил.
mirso
525 / 343 / 17
Регистрация: 05.04.2009
Сообщений: 709
31.08.2009, 01:35 #21
easybudda,
Цитата Сообщение от easybudda Посмотреть сообщение
Точку с запятой пропустил.
Компилятор бы наверное подсказал, что ему чего-то не хватает!(для полного счастья)
^Tecktonik_KiLLeR
1159 / 441 / 22
Регистрация: 23.06.2009
Сообщений: 6,235
Завершенные тесты: 1
31.08.2009, 09:03  [ТС] #22
Цитата Сообщение от mirso Посмотреть сообщение
а сколько у тебя в файле "c://test.txt" должно было их быть?
я уже все решил
RedAXE
-10 / 0 / 0
Регистрация: 12.12.2012
Сообщений: 43
08.03.2013, 13:05 #23
Какой способ выбрал?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.03.2013, 13:05
Привет! Вот еще темы с ответами:

Чтение строк из файла - C++
Добрый день имеется ряд вопросов касательно чтения строк из текстового файла. В папке с программой содержится файл TEST.TXT, в котором...

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

Чтение файла в массив строк - C++
Доброго времени суток!!! Как считать файл в массив строк? Заранее спасибо!!!

Чтение из файла в массив строк - C++
Всем добра! Пишу с таким вопросом: есть файл с текстом, длины строк не известны, надо задать динамический массив string (ну чтобы можно...


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

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

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