用BitSet创建一个01流的二进制文件

 bitset<8> bufferzero;
    bitset<8> bufferone;
              int a=-1; int b=-1;
    for(int i=0;i<8;i++)
    {
      bufferzero[i]=0;
      bufferone[i]=1;
   
    //memset(bufferzero,0,1);

  //memset(bufferone,1,1);
  FILE * pFile=fopen(filename,"wb");       
  
  //文件头64字节
  char Header[64];
  for(int i=0;i<64;i++)
  {
    if(!(i%2))
           memcpy(&Header[i],&bufferzero,1);
    else
     memcpy(&Header[i],&bufferone,1);
  }
        bitset<8> tempBit;
  for(int i=0;i<64;i++)
  {
   if(!(i%2))
   {
    memcpy(&tempBit,&Header[i],1);
    unsigned long a=tempBit.to_ulong();
    int  b=a;
    printf("%d\n",b);
   }
   else
   {
    memcpy(&tempBit,&Header[i],1);
    unsigned long a=tempBit.to_ulong();
    int b=a;
                printf("%d\n",b);
   }
  }
  fwrite(Header,64,1,pFile);
 
  char Page[4096];
     for(int i=0;i<4096;i++)
  {
           if(!(i%2))        
   memcpy(&Page[i],&bufferzero,1);
     else
      memcpy(&Page[i],&bufferone,1);
  }
  fwrite(Page,4096,4,pFile); 
       
  char PageCach[4096];
    
  for(int i=0;i<4096;i++)
  {
   if(!(i%2))        
    memcpy(&PageCach[i],&bufferzero,1);
   else
    memcpy(&PageCach[i],&bufferone,1);
  }
  
  fwrite(PageCach,4096,5,pFile); 
        fwrite(PageCach,4096,1,pFile);
  fclose(pFile);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值