IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Программирование (https://www.imho.ws/forumdisplay.php?f=40)
-   -   считывание файла побитово для последующего его сжатия (https://www.imho.ws/showthread.php?t=42003)

atomic 29.10.2003 02:52

считывание файла побитово для последующего его сжатия
 
Привет
Народ помогите реализовать в Билдере считывание файла побитово для последующего его сжатия

rg_software 29.10.2003 03:52

Вообще размер файла всегда кратен 8 битам, поэтому при сжатии лучше всего где-нибудь в заголовке прописать точное количество "значимых" битов в последнем байте файла.

// считать бит из файла infile
BYTE GetBit()
{
static BYTE This;
static int count = 8;
BYTE bit;

if(count == 8)
{
This = fgetc(infile);
count = 0;
}

bit = (This>>count) & 1;
count++;

return bit;
}

// записать бит в файл outfile
void PutBit(BYTE bit)
{
static BYTE This;
static int count = 0;

This |= bit<<count;
count++;

if(count == 8)
{
fputc(This, outfile);
count = 0;
This = 0;
}
}


Часовой пояс GMT +4, время: 04:39.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.