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

Бинарные файлы - C++

Восстановить пароль Регистрация
 
defer
秘密
 Аватар для defer
555 / 235 / 3
Регистрация: 29.11.2010
Сообщений: 783
10.04.2012, 02:28     Бинарные файлы #1
как в бинарном файле заменить 4, 8 и 10 байт
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2012, 02:28     Бинарные файлы
Посмотрите здесь:

Бинарные файлы.. C++
C++ С++ бинарные файлы
C++ Бинарные файлы
Бинарные файлы c++ C++
бинарные файлы, C++ C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
10.04.2012, 02:47     Бинарные файлы #2
Си или С++?
defer
秘密
 Аватар для defer
555 / 235 / 3
Регистрация: 29.11.2010
Сообщений: 783
10.04.2012, 03:08  [ТС]     Бинарные файлы #3
Цитата Сообщение от kazak Посмотреть сообщение
Си или С++
давайте оба
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
10.04.2012, 13:38     Бинарные файлы #4
Во-первых нужно переместить указатель в файле в нужное место, делается это следующей функцией
C
1
int fseek(FILE *stream, long offset, int whence);
Функция означает следующее: переместить указатель в файле sream на offset байт относительно whence. Последния параметр может принимать три значения:
C
1
2
3
SEEK_SET    0   относительно начала файла
SEEK_CUR    1   относительно текущей позиции
SEEK_END    2   относительно конца файла
В С++ соответствующий аналог метод seekp
C++
1
ostream& seekp ( streamoff off, ios_base::seekdir dir );
Последний параметр также может принимать три параметра
C++
1
2
3
ios_base::beg
ios_base::cur
ios_base::end
Значения идентичны сишному варианту.

Далее производите запись в файл
C
1
size_t fwrite(const void *ptr, size_t size, size_t n, FILE *stream);
ptr - указатель на начало блока данных
size - размер блока
n - количество блоков
stream - файл, куда производится запись
Или же
C++
1
ostream& write ( const char* s , streamsize n );
s - указатель на начало блока (если указатель будет отличный от char, потребуется приведение к нему)
n - количество записываемых байт
Yandex
Объявления
10.04.2012, 13:38     Бинарные файлы
Ответ Создать тему
Опции темы

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