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

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

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

Неверная кодировка при считывании из файла - C++

21.04.2014, 21:30. Просмотров 561. Ответов 5
Метки нет (Все метки)

Проблема такая, при считывание из файла идет кракозябра, как это исправить
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
setlocale(LC_ALL, "rus");
    FILE *fp;
    
    if(!(fp = fopen("C:\\Users\\Maxim\\Documents\\Visual Studio 2008\\Projects\\datebasemax\\datebasemax\\maxim.txt","r"))==NULL)
    {
        cout<<"открыт"<<endl;
    }
    student maxim;
    int i  =0;
    while(!feof(fp))
    {
        if(i==0)
        {
            char string[1];
            fgets(string,1,fp);
            cout<<string;
            maxim.index = atoi(string);
            i++;
            cout<<maxim.index<<endl;
            fclose(fp);
        }
        
 
    }
    int n;
    cin >>n;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2014, 21:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Неверная кодировка при считывании из файла (C++):

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

Неверная кодировка при чтении из файла - C++
Здравствуйте! Есть функция, которая читает символы из текстового файла. При чтении русской буквы выскакивает ошибка Expression: c &gt;= -1...

Неверная кодировка при записи в файл - C++
как сделать так чтобы программа смогла записывать русский и украинский язык у меня записывает только цифры ангалийську язык #include...

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

Переполнение при считывании из файла - C++
Подскажите пожалуйста, где ошибка, вот код чтения из файла: void read_file(void) { int mass; FILE* file = fopen(&quot;arr.txt&quot;, &quot;r&quot;); ...

Проблема при считывании из файла - C++
Пишу простенькую программу по криптографии. В результате шифрования получается txt файлик с набором закорючек(он во вложении). Для...

5
nmcf
5678 / 4989 / 1701
Регистрация: 14.04.2014
Сообщений: 20,350
21.04.2014, 21:45 #2
Массив маленький. Надо минимум string[2].
0
monolit
186 / 185 / 22
Регистрация: 24.03.2011
Сообщений: 669
Завершенные тесты: 1
21.04.2014, 22:54 #3
nmcf, ну дык он по одному символу и читает)
0
о_О_Кто_здесь
11 / 11 / 1
Регистрация: 06.06.2011
Сообщений: 152
21.04.2014, 23:02 #4
stler, Помимо считывания, если читается русский текст, то кириллица больное место. Посмотрите тему: Русские шрифты в консоли Возможно, она Вам поможет.
0
alsav22
5428 / 4823 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.04.2014, 06:52 #5
Цитата Сообщение от stler Посмотреть сообщение
при считывание из файла идет кракозябра, как это исправить
Для начала, чтение из файла нормально сделать.
Цитата Сообщение от monolit Посмотреть сообщение
ну дык он по одному символу и читает)
А может вообще не читает? fgets() читает символов на единицу меньше, чем второй параметр (чтобы добавить '\0'), а второй параметр здесь 1. И куда добавлять '\0', если массив под один элемент?
0
IrineK
Заблокирован
22.04.2014, 07:06 #6
stler,
Цитата Сообщение от stler Посмотреть сообщение
char string[1];
строка длиной 1 - это "\0", то бишь, пустая строка.
строка длиной 2 - это, например "3\0", при этом на "обработку" под atoi отправится 3.
0
22.04.2014, 07:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.04.2014, 07:06
Привет! Вот еще темы с ответами:

Сбивается указатель при считывании из файла - C++
Сбивается указатель, считывается не то значение (вместо '1' считывается пробел и всё летит). Но если открыть этот файл в WordPad'e добавить...

Разъясните ошибки при считывании файла - C++
не пойму что от меня требуется тут) пол года изучаем язык) часть ошибок исправил но при считывании с файла лепит нарушение прав доступа ...

Ошибка, при считывании инфы с файла... - C++
Вот есть код:#include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;string.h&gt; #include &lt;fstream.h&gt; #include &lt;stdio.h&gt; #include...

Лишние биты при считывании файла - C++
Нужно порциями по 63 байта считать текст из файла. &quot;in&quot; - мой открытый файл для чтения. Вот отрывок из кода fseek(in, 0, SEEK_END); ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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