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

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

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

считывание из файла c++ - C++

10.05.2013, 17:01. Просмотров 462. Ответов 6
Метки нет (Все метки)

считываю из файла, но он не читает все строки, почему не знаю. Может кто-нибудь помочь?

C++
1
2
3
4
5
6
7
 ifstream file("1.txt",ios::in);
    char *buff=new char[1024];
    while(file.good())
    {
     file.getline(buff,1024,'\0');
      printf("%s\n",buff);
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2013, 17:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос считывание из файла c++ (C++):

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

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

Считывание из файла - C++
Функция: //Функция добавления новых пользователей void Add_New_User() { FILE *Fptr = fopen("New_User.txt", "r"); if (Fptr ==...

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

считывание с файла... - C++
Добрый вечер! Мне нужно создать функцию, которая вычисляла количество символов в строке файла, и количество строк в файле. Добавлено...

Считывание из файла С++ - C++
Программа, которая считывает текст из файла и выводит его на экран, заменив цифры от "0" до "9" словами (ноль, один два), начиная каждое...

6
Silvestr1994
27 / 27 / 1
Регистрация: 26.10.2012
Сообщений: 101
10.05.2013, 17:07 #2
попробуй убрать ios::in
0
xtorne21st
интересующийся
304 / 275 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
10.05.2013, 17:09 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <fstream>
#include <cstdio>
 
using std::ifstream;
using std::ios;
 
int main()
{
    ifstream file("main.cpp",ios::in);
    char *buff=new char[1024];
    while(file.getline(buff, 1024, '\n'))
    {
           printf("%s\n",buff);
    } 
}
1
Ev[G]eN
iOS/Android Developer
Эксперт С++
5097 / 1535 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
10.05.2013, 17:09 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <cstdio>
 
int main()
{
    std::FILE *file = std::fopen("C:\\Users\\Samsung\\Desktop\\untitled\\File.txt", "rt");
    char currentChar;
    while ((currentChar = std::fgetc(file)) != EOF)
        std::cout << currentChar;
    std::fclose(file);
 
    return 0;
}
0
xtorne21st
интересующийся
304 / 275 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
10.05.2013, 17:11 #5
Цитата Сообщение от Silvestr1994 Посмотреть сообщение
попробуй убрать ios::in
не в этом дело. Соль в методе std::istream::getline. http://www.cplusplus.com/reference/i...tream/getline/
0
Silvestr1994
27 / 27 / 1
Регистрация: 26.10.2012
Сообщений: 101
10.05.2013, 17:12 #6
вот пример
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// iline.cpp
// file input with strings
#include <fstream>                  //for file functions
#include <iostream>
using namespace std;
 
int main()
   {
   const int MAX = 80;              //size of buffer
   char buffer[MAX];                //character buffer
   ifstream infile("TEST.TXT");     //create file for input
   while( !infile.eof() )           //until end-of-file
      {
      infile.getline(buffer, MAX);  //read a line of text
      cout << buffer << endl;       //display it
      }
   return 0;
   }
0
xtorne21st
интересующийся
304 / 275 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
10.05.2013, 20:20 #7
Silvestr1994,
Цитата Сообщение от Silvestr1994 Посмотреть сообщение
вот пример
Как по мне, такого делать не нужно: у вас условие проверяется в 13 строчке, затем идёт считывание в 15 и результат передаётся в 16 уже без проверки! Это в лучшем случаи может привести к печатанью лишней пустой строки, в худшем к ошибки сегментации в 16 строчке при обращении к несуществующему буферу.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.05.2013, 20:20
Привет! Вот еще темы с ответами:

Считывание файла - C++
ВОбщем при считывании файла стандартными способами FILE *file = fopen(filename, &quot;r&quot;); if(file == NULL) { return; } ...

Считывание из файла - C++
Ребят, помогите, пожалуйста, новичку разобраться=) Есть файл, в котором расположена информация примерно такого содержания 1946 12 30 0...

Считывание из файла - C++
есть файл с настройками prog.conf вида: date = 01.02.2010 time = 15:05:45 step = 0.5 ... есть переменные: day, month, year,...

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


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

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

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