1 / 1 / 3
Регистрация: 27.01.2015
Сообщений: 116
1

Кракозябры при вводе данных в файл

01.12.2015, 11:20. Показов 570. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток!
Пытаюсь вводить данные в файл. Данные организованы следующей структурой:
C++
1
2
3
4
5
6
7
8
9
10
struct STUDENT
{
    string FIO[3];
    int DataNarod[3];
    string grupa;
    float ocinkaFizika;
    float ocinkaMath;
    float ocinkaIstoria;
    int stipendia;//0 либо 1
};
Следующий код вводит в строку ошибочные данные (набор непонятных символов и пробелов). В чем может быть проблема?
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
34
35
36
37
38
39
40
41
42
43
44
void Input()//Ввод данных в файл
{
    if ((G = fopen("Familia.txt", "wb")) != NULL) {
        cout << "Input vidomosti o studentovi " << endl;
        STUDENT S[n];
        for (int i = 0; i < n; i++) {
            cout << "Vvedit` FIO" << endl;
            cin >> S[i].FIO[0];
            cin >> S[i].FIO[1];
            cin >> S[i].FIO[2];
 
            cout << "Vvedit` datu narodjenn`a" << endl;
            cin >> S[i].DataNarod[0];
            cin >> S[i].DataNarod[1];
            cin >> S[i].DataNarod[2];
            cout << "Vvedit` grupu" << endl;
            cin >> S[i].grupa;
            cout << "Vvedit` ocinku z fiziki" << endl;
            cin >> S[i].ocinkaFizika;
            cout << "Vvedit` ocinku z matematiki" << endl;
            cin >> S[i].ocinkaMath;
            cout << "Vvedit` ocinku z istotii" << endl;
            cin >> S[i].ocinkaIstoria;
            cout << "Vvedit` nayavnist` stipendii (1 - bula, 2 - ne bulo)" << endl;
            cin >> S[i].stipendia;
 
            fwrite(&S[i].FIO, sizeof(S[i].FIO), 1, G);
            fwrite(&S[i].DataNarod, sizeof(S[i].DataNarod), 1, G);
            fwrite(&S[i].grupa, sizeof(S[i].grupa), 1, G);
            fwrite(&S[i].ocinkaFizika, sizeof(float), 1, G);
            fwrite(&S[i].ocinkaMath, sizeof(float), 1, G);
            fwrite(&S[i].ocinkaIstoria, sizeof(float), 1, G);
            fwrite(&S[i].stipendia, sizeof(int), 1, G);
 
            cout << "Bazhaete prodovziti (1 - da, 2 - ni)?" << endl;
            int k;
            cin >> k;
 
            if (k == 2)
                return;
        }
    }
    fclose(G);
    }
0
01.12.2015, 11:20
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.12.2015, 11:20
Ответы с готовыми решениями:

Кракозябры при вводе через input web приложение
При вводе русского текста в &lt;input&gt; оно возвращает кракозябры. У jsp файла кодировка UTF-8. Английский работает ПОМОГИТЕ!!!

Ошибка при вводе данных в файл
Мне кажется, я что-то напутал с типом данных, но всё равно не получается найти и исправить ошибку. Посмотрите, пожалуйста.

Вывод о некоректности данных при их вводе в файл
Здравствуйте! Задача: есть число записанное в 10СС от 2^0 до 2^(100) -1. Необходимо было считать число из файла input.txt перевести в...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.12.2015, 11:20
Помогаю со студенческими работами здесь

Кракозябры при выводе в файл
Привет, всем. Долго вожусь с этой проблемой и никаких результатов.. #include &lt;iostream&gt; #include &lt;fstream&gt; #include...

Загружаю файл Word, но при отображении файла у меня кракозябры
испльзую кодировку 1251. загружаю файл Word но при отображении файла у меня кракозябры. Как решить эту проблему?

Кракозябры вместо слов и цифр при записи структуры в файл
Помогите, пожалуйста! Создаю файл, записываю в него структуру, записывается кракозябра вместо слов и цифр. Как решить проблему?

Кракозябры при выгрузки в Word данных запроса с объединением
Добрый день, уважаемые форумчане! Проблема такого плана. Создаю запрос на выборку. В этом запросе есть поле, в котором объединяю несколько...

При использовании команд Vim в CMD в текстовый файл записываются кракозябры
Пытаюсь при помощи Vi найти и заменить текст через cmd. Выходит крякозябрами. &quot;C:\Program Files (x86)\Vim\vim80\vim.exe&quot; -c...


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

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

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Опции темы

Новые блоги и статьи
Комментарии в JSON
hw_wired 10.02.2025
JSON - текстовый формат обмена данными, построенный на основе синтаксиса JavaScript. Этот формат отличается простотой, читаемостью и широкой поддержкой во всех современных языках программирования. . . .
Перезаписываем локальные файлы с помощью git pull
hw_wired 10.02.2025
Git pull - незаменимая команда для синхронизации локального репозитория с удаленным. При работе над проектом в команде разработчиков часто возникает необходимость получить актуальные изменения,. . .
Оператор --> в C++
hw_wired 10.02.2025
Оператор --> (называемый "spaceship operator" или оператор космического корабля) - важное нововведение в стандарте C++20, упрощающее реализацию операций сравнения в пользовательских типах данных. . . .
Отмена git add до коммита
hw_wired 10.02.2025
Git предлагает несколько методов для отмены индексации файлов перед созданием коммита. Разработчики часто сталкиваются с ситуацией, когда нужно убрать файлы из индекса, не теряя внесенные изменения в. . .
Типы MIME в JSON: что и когда использовать в REST API
hw_wired 10.02.2025
MIME-типы играют ключевую роль в современных веб-приложениях, особенно в контексте REST API и микросервисной архитектуры. Они определяют формат передаваемых данных между клиентом и сервером, что. . .
Переименование локальной ветки Git
hw_wired 10.02.2025
Git предлагает систему управления версиями, где ветки играют ключевую роль в организации разработки. Ветки позволяют изолировать изменения кода, экспериментировать с новыми функциями и поддерживать. . .
Удаление элемента из массива в JavaScript
bytestream 10.02.2025
В JavaScript массивы - это упорядоченные наборы данных, которые часто требуют модификации, включая удаление элементов. Самый распространенный метод для этой задачи - splice(). Этот метод позволяет не. . .
Что значит yield в Python
bytestream 10.02.2025
Ключевое слово yield в Python создает генераторную функцию - особый тип функции, которая возвращает итератор. В отличие от обычных функций, использующих return для возврата значения и завершения. . .
Чем отличаются git pull и git fetch
bytestream 10.02.2025
Git предоставляет множество команд для работы с удаленными репозиториями, среди которых особое место занимают git fetch и git pull. Эти команды помогают синхронизировать локальный репозиторий с. . .
Как удалить ветку Git в локальном и удаленном репозитории
bytestream 10.02.2025
Git предлагает развитую систему ветвления, позволяющую разработчикам создавать параллельные версии кода для различных задач. Ветка в Git - это легковесный указатель на определенный коммит, который. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru