热情软件屋

 

打开文件,如何能够知道要读的文件每位是“0”还是“1”


编号:QA003616
建立日期: 2000年12月2日 最后修改日期:2000年12月2日
所属类别:

goodluck:
    我在程序中用CFile::modeRead|CFile::typeBinary模式打开了一个文件,希望能够知道要读的文件每位是“0”还是“1”,接下来我该怎么做?谢谢!!!!

回答:

    打开文件读入到str数组,为方便定义8bit的unsigned short型,对str每个元素按位与操作,相应位是“0”,string+"0",else,string+"1",最后结果输出到messagebox()对话框。你可以根据你的需要作相应修改,注意文件
    读出的值,可以在调试中跟踪。
     CFileDialog fdlg(TRUE,NULL,NULL);
     CFile file;
     if(fdlg.DoModal()==IDOK){
     file.Open(fdlg.GetPathName(),CFile::modeRead|CFile::typeBinary,NULL);
     }
     int i,j,n;
     int arry[8]={1,2,4,8,16,32,64,128};
     n=file.GetLength();
     unsigned short str[1024]; //8 bit
     file.Read(&str,n);
     CString string;
     for(i=0;i     for(j=8;j>0;j--){
     if(str[i]&arry[j]) //& option
     string+="1";
     else
     string+="0";
     }
     }
     MessageBox(string);

此问题由bluenet回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio