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

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

Войти
Регистрация
Восстановить пароль
 
 
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
#1

Чтение из файла - C++

11.05.2012, 17:00. Просмотров 975. Ответов 25
Метки нет (Все метки)

у меня есть файл такого вида
N | utr |KPD |
1 | 335.25 |0.78 |
2 | 276.09 |0.78 |
3 | 223.90 |0.78 |
4 | 184.39 |0.78 |
5 | 150.74 |0.78 |
6 | 124.13 |0.78 |
7 | 139.69 |0.82 |
8 | 115.04 |0.82 |
9 | 93.29 |0.82 |
10 | 76.83 |0.82 |
11 | 62.81 |0.82 |
12 | 51.72 |0.82 |
13 | 104.56 |0.82 |
14 | 86.11 |0.82 |
15 | 69.83 |0.82 |
16 | 57.51 |0.82 |
17 | 47.01 |0.82 |
18 | 38.72 |0.82 |
19 | 51.88 |0.82 |
20 | 42.72 |0.82 |
21 | 34.65 |0.82 |
22 | 28.53 |0.82 |
23 | 23.32 |0.82 |
24 | 19.21 |0.82 |
нужно записать в три разные массива три колонки какой функцие можно считать из файла удобнее всего
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2012, 17:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Чтение из файла (C++):

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

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

Преобразование текстового файла в двоичный и чтение исходных данных из двоичного файла. - C++
#include<iostream> #include<fstream> #include<locale.h> #include<iomanip> #include <cstdlib> using namespace std; struct...

Чтение нескольких структур и одной переменной из бинарного файла. Формат файла имеется - C++
Формат файла состоит из 3 структур и одной переменной. Подробное описание формата во вложении, просьба посмотреть его. У меня возникла...

как может корректно выполняющийся оператор >> (чтение из текстового файла) негативно влиять на открытие другого файла? - C++
Друзья! Создадим два текстовых файла, f_0.txt и f_1.txt и что-нибудь в них запизаем, например в первый запихаем 1234 а во второй 5678 и...

Чтение файла с несколькими знаками конца файла - C++
В файле несколько раз встречается ноль, и ни как не получается прочитать его полностью. Как можно решить данную проблему ?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Игорь с++
436 / 459 / 16
Регистрация: 26.01.2011
Сообщений: 2,032
11.05.2012, 17:35 #2
Можно всё считать в один массив , а потом работая с ним распихать по разным.
Считать всё полностью в один можно таким образом -
C++
1
2
3
4
5
6
7
HANDLE hFile;
DWORD dwBytes=0;static int BufSize=0;
    static char Buffer[100]={0};
hFile=CreateFile("a.txt",GENERIC_READ, FILE_SHARE_READ,NULL, OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
BufSize = GetFileSize(hFile, NULL);
ReadFile(hFile,Buffer,BufSize,&dwBytes,NULL);
CloseHandle(hFile);
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
11.05.2012, 18:01  [ТС] #3
так не пойдет слишком много потом действий надо будет сделать
0
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
11.05.2012, 18:02 #4
первую строчку пропускаем fgets-ом
дальше читай fscanf:
C++
1
fscanf(file, "%d | %lf | %lf", &arr1[i++], &arr2[j++], &arr3[k++]);
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
11.05.2012, 18:04  [ТС] #5
в смысле пропускаем fgets
0
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
11.05.2012, 18:08 #6
в прямом. вызовешь fgets, чтобы тебе первую строчку пропустить.

код на С++:
C++
1
2
3
4
5
6
7
8
9
10
11
    std::ifstream ifs("in.txt");
 
    int i;
    double k, l;
 
    char junk;
 
    while (!ifs.eof()) {
        ifs >> i >> junk >> k >> junk >> l;
        std::cout << i << ' ' << k << ' ' << l << '\n';
    }
хотелось бы услышать как можно сделать подобное без переменной junk, от знающих людей.

Добавлено через 1 минуту
sergeu90, тебе код на С++ или С нужен ?
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
11.05.2012, 18:12  [ТС] #7
у меня ругаеться на ifs >> z >> junk >> k >> junk >> l;
cout << z << ' ' << k << ' ' << l << '\n';

Добавлено через 17 секунд
нужно на с++
0
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
11.05.2012, 18:14 #8
а у меня не ругается
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
11.05.2012, 18:29  [ТС] #9
не считывает оно какие то цифры странные чего не те что в файле у меня

Добавлено через 12 минут
OstapBender, у тебя считывает нормально?у меня вообще не читает одни и теже цифры
0
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
11.05.2012, 18:42 #10
а так
C++
1
ifs >> i >> junk >> k >> junk >> l >> junk;
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
11.05.2012, 19:08  [ТС] #11
OstapBender, тоже не считывается мусор считывает

Добавлено через 17 минут
и через fscanf тоже самое считывает мусор
0
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
11.05.2012, 19:20 #12
значит с файлом что-то не так
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
11.05.2012, 19:21  [ТС] #13
а вы пробывали считать сами из файла такого как у меня содержания?
0
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
11.05.2012, 19:22 #14
пробывал.
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
11.05.2012, 19:23  [ТС] #15
и считывает все хорошо?три столбца как надо?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.05.2012, 19:23
Привет! Вот еще темы с ответами:

чтение из файла - C++
Здравствуйте, уважаемые программисты. Есть файл с записями (объектами), у каждой записи 3 параметра (переменные). Я считываю запись,...

Чтение файла - C++
Доброго времени суток. Пишу программу которая может читать каждый символ файла. #include&lt;iostream&gt; #include&lt;fstream&gt; ...

чтение из файла - C++
файл текст... чтение... ... char font_name = {0}; int font_size = 0;

Чтение из файла - C++
Помогите дописать код чтения из файла. За ранее спасибо. void MyList::save() { Sotrydnik sSotrydnik; ofstream F; ...


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

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

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