一千萬個為什麽

搜索

如何以二進制形式將二進制字符串存儲在文件中?

我在存儲二進制字符串時遇到問題。如何以二進制形式將二進制字符串“100010101010000011100”存儲在使用C的文件中?

除了一個字符串,如果我有兩個字符串,我怎麽能將這兩個字符串存儲在一起? 謝謝你的幫助。

最佳答案

您可以將 8 位填充到 unsigned char 變量中並將其寫入該文件。

unsigned char ch=0;
char bin[] = "100010101010000011100";
int i=0;

while(bin[i]) {
  if(i%8 == 0) {
   //write ch to file.
    ch = 0;
  }else {
   ch = ch | (bin[i] - '0');
   ch = ch << 1;
  }
  i++;
}

轉載註明原文: 如何以二進制形式將二進制字符串存儲在文件中?