[問題] 請問如何將檔案寫入bit

看板C_and_CPP作者 (斷水流大師兄)時間15年前 (2009/05/13 10:08), 編輯推噓2(206)
留言8則, 5人參與, 最新討論串1/1
再做壓縮的時候,有時候會需要把73bit寫入檔案裡,可是我只會用fputc, 這樣總會有一個bit寫不進檔案裡,而且讀的時候也不知該怎麼讀1個bit, 請問該怎麼寫呢??? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.224.11.186

05/13 10:14, , 1F
應該有padding吧, 看最後1bit要加7bit的0還是其他格式..
05/13 10:14, 1F

05/13 22:04, , 2F
用一個 byte 存 1 bit 很困難嗎 @@?
05/13 22:04, 2F

05/13 22:08, , 3F
用Mask去切 char mask[8]={1,2,4,8,16,32,64,128}
05/13 22:08, 3F

05/13 22:14, , 4F
問題是如果有一個byte存1bit的資料,就沒有達到壓縮的效果了
05/13 22:14, 4F

05/13 23:04, , 5F
如果"只有"1 byte存了1 bit的資料為什麼會沒有壓縮的效
05/13 23:04, 5F

05/13 23:04, , 6F
果??事實上, 也不是什麼東西都一定可以壓縮的, 壓縮完比
05/13 23:04, 6F

05/13 23:05, , 7F
原始檔案還大也不是沒可能; 只是這種case通常會保留一個
05/13 23:05, 7F

05/13 23:05, , 8F
方式做hint, hint這子筆資料不壓縮用原始資料儲存.
05/13 23:05, 8F
文章代碼(AID): #1A2YkTYw (C_and_CPP)