Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 1
Регистрация: 16.11.2013
Сообщений: 28
1

Вывод из файла

24.12.2013, 23:40. Показов 1013. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include "stdafx.h"
#include "iostream"
 
using namespace std;
    
    struct avia
    {
      char DepCity[64];
      char ArrCity[64];
      unsigned short int duration;
      unsigned short int numbers;
      unsigned int cost;
    }*flight1;
 
int main()
{
int ks=0,n;
    
    FILE* f=fopen("d:\Flights.txt","rt");
    if (f)
    {
    char c;
    while (!feof(f))
    if ((c=fgetc(f))=='\n' || c==EOF) ks++; //узнаем, сколько строк в файле
    n=ks/5;
    flight1 = new avia[n];                  //выделяем память для массива структур
 
    fclose(f);
FILE* f=fopen("d:\Flights.txt","rt");       //закрываем и открываем файл, чтобы чтение началось сначала
        
 
 
            for(int i=0;i<n;i++)
            {   
    
            fgets(flight1[i].DepCity,64, f);
            flight1[i].DepCity[strlen(flight1[i].DepCity) - 1] = '\0';
                fgets(flight1[i].ArrCity,64, f);
                flight1[i].ArrCity[strlen(flight1[i].ArrCity) - 1] = '\0';
 
                
                fscanf(f,"%d",&flight1[i].duration);
                fscanf(f,"%d",&flight1[i].numbers);         
                fscanf(f,"%d",&flight1[i].cost);
                
            }
 
 
    for(int i=0;i<n;i++)                    //вывод элементов массива структур
    {
        cout<<flight1[i].DepCity<<endl;
        cout<<flight1[i].ArrCity<<endl;
        cout<<flight1[i].duration<<endl;
        cout<<flight1[i].numbers<<endl;
        cout<<flight1[i].cost<<endl;
    }
    fclose(f);  
 
    }
    else  cout<<"Error";    
    cin.ignore();
    cin.get();
    delete [] flight1;                      //очистка памяти
    return 0;
}
В строке 33, в цикле ошибка, пропадает строчка, в результате чего строки выводятся криво
Вывод из файла


Вывод из файла
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.12.2013, 23:40
Ответы с готовыми решениями:

Построчный вывод текстового файла и вывод комментария к каждой строке.
Программа делает выгрузку текстового файла с сервера и отображает содержимое текстового файла на...

Пропуск чтения пустого файла docx (и вывод полного содержимого файла)
Добрый день! Данный кусок кода при чтении пустого файла docx выдает ошибку – «…&quot;Package not found...

Реализовать поиск файла в каталоге и вывод на консоль заданных атрибутов найденного файла
Приведите, пожалуйста, пример кода программы, которая ищет файлы, находящиеся в каталоге, и выдаёт...

Вывод из файла в QTableWidget, построчное чтение с конца файла
Привет! Делаю первые шаги в Qt, собственно поэтому без проблем никуда. Моя задача на данный...

2
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
24.12.2013, 23:53 2
Лучший ответ Сообщение было отмечено Pakestan228 как решение

Решение

После последнего fscanf(), в цикле, нужно убрать '\n' из потока (перед gets() не должно быть):
C++
1
fgetc(f);
1
0 / 0 / 1
Регистрация: 16.11.2013
Сообщений: 28
24.12.2013, 23:58  [ТС] 3
Огромное спасибо
0
24.12.2013, 23:58
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.12.2013, 23:58
Помогаю со студенческими работами здесь

Вывод файла
Такой вопрос. Есть файл 1.тхт как его вывести, что бы отображалось ввиде массива, но не построчно,...

Вывод с файла
Знаю как вывести просто строку с файла, а если в файле дана не одна строка, как можно решить...

Вывод из файла
Здравствуйте написал программу ввода/вывода из файла, но когда выводит из файла на экран, почему-то...

Вывод с файла
Всем привет, Помогите, пожалуйста, с реализацией ввода и вывода из файла. Есть задача в которой...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru