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

Лишние символы при записи в файл

12.12.2013, 16:51. Показов 2478. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
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
void Add_department::OnBnClickedOk()
{
    char seps[]   = ":";
    char *token;
    char* file_name = "D:\\department.txt";
    char load_string[1000] = "none";
    FILE *file;
    file = fopen( file_name, "r+" );
    if( file != 0 )
    {
        fgets( load_string, 1000 , file );
    }
    else
    {
        MessageBoxA("Не могу открыть файл БД.");
        return;
    }
    UpdateData(true);
    CString ToOut;
    ToOut.Format("%s:",department);
    MessageBoxA(ToOut);
    fwrite(ToOut, sizeof(int), strlen(ToOut)*4+1, file);
    fclose(file);
    OnOK();
}
Хочу добавить в файл запись, но, видимо, ошибка с кодировков или открывает как бинарный, т.к. дописывает кучу знаков, а со второй попытки может вообще не записать.
Должен дописывать в конец файла:
"пример1:пример2:пример3" ... и должен добавляться "пример4:".
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.12.2013, 16:51
Ответы с готовыми решениями:

Tesseract: лишние символы (шум) при записи в файл
Господа, помогите кто знает. #include <fstream> #include <stdio.h> #include <allheaders.h>...

Ненужные символы при записи в файл
Добрый день! Столкнулся с такой проблемой: создаю в программе новый файл и пытаюсь записать туда...

Непонятные символы при записи в файл
Доброго времени суток. Вот снова прошу о помощи гуру программирования. Код еще не дописан, но...

Лишние символы при записи в файл
Здравствуйте. Скажите пожалуйста, почему при сохранении значений в файл между строками, в которых...

4
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
12.12.2013, 17:07 2
Раз используете функцию бинарной записи, то и файл в бинарном режиме нужно открывать (fgets() это не помешает). CString не знаю, но почему так записываете в файл, блоками int (sizeof(int))?
0
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 97
12.12.2013, 17:17  [ТС] 3
Цитата Сообщение от alsav22 Посмотреть сообщение
Раз используете функцию бинарной записи, то и файл в бинарном режиме нужно открывать. CString не знаю, но почему так записываете в файл, блоками int (sizeof(int))?
sizeof(CString) нужно или я не понял суть записи?
Как можно открыть в бинарном режими, хотя было бы лучше использовать обычный txt.
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
12.12.2013, 17:24 4
Цитата Сообщение от PArkan Посмотреть сообщение
sizeof(CString) нужно или я не понял суть записи?
Если CString состоит из char, то тогда, наверное, так нужно (хотя не знаю, можно ли, к CString, применять strlen()):
C++
1
fwrite(ToOut, sizeof(char), strlen(ToOut), file);
Цитата Сообщение от PArkan Посмотреть сообщение
Как можно открыть в бинарном режими
"rb+"
1
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 97
12.12.2013, 17:32  [ТС] 5
alsav22, пока все отлично. Спасибо.
0
12.12.2013, 17:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.12.2013, 17:32
Помогаю со студенческими работами здесь

Лишние и пропадающие символы при записи в файл. Как с ними бороться
Есть пара циклов, за пару часов вдумчигого взгляда ничего не нашел. код: Global Dim Pam(10)...

Лишние символы при записи Бат-файла
Я хочу написать через VB.net Батник, но сталкиваюсь с проблеммой!...

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

Лишние символы в записи в реестр
Всем доброго времени суток . Возникла такая проблема , что во время записи программы в автозагрузку...


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

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