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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.75
Anatoliy Coder
 Аватар для Anatoliy Coder
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 75
#1

Считывание из файла в char' овский массив - C++

13.10.2012, 10:11. Просмотров 1111. Ответов 4
Метки нет (Все метки)

Да вопрос боян, но у меня почему-то все символы программа считывает, как один и тот же символ.
Дайте пожалуйста код, который считает в char'овский массив весь файл (в файле много строк)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.10.2012, 10:11     Считывание из файла в char' овский массив
Посмотрите здесь:

C++ Считывание текста из файла в массив
C++ Считывание в массив char с консоли
Считывание из файла в массив структур C++
C++ Считывание из файла в char - при выводе выводится лишнее
Считывание из файла в массив C++
C++ Считывание чисел из файла в массив
Считывание из файла в массив строк C++
Считывание текста из файла text в массив char C++
C++ Считывание файла в массив
Считывание из файла в двумерный массив C++
Считывание из файла в массив C++
Считывание значений из файла (преобразование char в int) C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
 Аватар для David Sylva
1283 / 945 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
13.10.2012, 10:14     Считывание из файла в char' овский массив #2
Покажи свой код.
Anatoliy Coder
 Аватар для Anatoliy Coder
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 75
13.10.2012, 21:23  [ТС]     Считывание из файла в char' овский массив #3
Нет у меня уже своего кода я уже разные варианты из инета методом копипаста пробывал. Неполучается.
Если можно, то предложите мне ваш вариант пожалуйста.

Добавлено через 16 минут
Ну вот пример моей попытки, но он вместо нормального чтение все время выдает MMMMMMMMMMMM.......
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <fstream>
 using namespace std;
int main()
{
    setlocale(LC_ALL,"");
    char str[1000];
    ifstream fail("object.obj", ifstream::in );
    int i;
    i = 0;
    while (i != 400)
    {
    fail.get(str[i]);
    cout << str[i];
i = i +1;
    }
  fail.close();
  system("pause");
 
}
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
13.10.2012, 21:57     Считывание из файла в char' овский массив #4
C++
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
#include <iostream>
#include <fstream>
using namespace std; 
 
int main()
{
    setlocale(0, "");
    
    ifstream f("file.txt", ios::binary);
 
    char *p = 0;
    if (!f.is_open()) cout << "Error!" << endl;
    else
    {
        f.seekg(0, ios::end);
        int n = f.tellg();
        f.seekg(0, ios::beg);
        
        char *p = new char[n];
        
        for (int i = 0; i < n; i++)
        {
            f.get(p[i]);
            cout << p[i];
        }
        
        f.close();
    }
    
    cout << endl;
    system("pause");
    return 0;
}
Добавлено через 7 минут
Ваш код, вообщем, рабочий. Скорее всего файл отсутсвует. С небольшими исправлениями:
C++
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
#include <iostream>
#include <fstream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"");
    
    char str[1000];
    
    ifstream fail("object.obj");
    if (!fail.is_open()) cout << "Error!" << endl; // если файла нет
    
    else
    {
        int i;
        i = 0;
        while (i != 400)
        {
            fail.get(str[i]);
            cout << str[i];
            i++;
        }
  
        fail.close();
    }
  
  cout << endl;
  system("pause");
  return 0;
 }
Anatoliy Coder
 Аватар для Anatoliy Coder
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 75
13.10.2012, 22:26  [ТС]     Считывание из файла в char' овский массив #5
Спасибо, что подсказали, сейчас буду пробовать.
P.S. Все получилось. Действительно оказалось, что файла небыло в нужном каталоге.
Yandex
Объявления
13.10.2012, 22:26     Считывание из файла в char' овский массив
Ответ Создать тему
Опции темы

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