c++按二进制读入txt文本

来源:百度知道 编辑:UC知道 时间:2024/06/01 19:37:34
就是在一个txt文本中有各种字符(包括中文),怎样在c++中将其读入到一个向量中去,并且要求读入到向量中的元素是二进制形式。例如a.txt文本中有abcd这些字符,则向量A中的元素有4*8个,为它们的二进制形式。谢谢拉!
由于本人比较笨,能否给我一个完整的示例程序,谢谢了!

从一个文本读取字符,转换为2进制数存到另一个文本中。
注意:因为2进制数高位有很多0,所以打印的时候无法显示

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
char a;
fstream fin("2.txt",ios::in),fout("3.txt",ios::out);
while(!fin.eof())
{
fin >> a;
if(a == '\n')
break;
int m = a;
char s[32];
itoa(m,s,2);
fout << s << endl;
}
fin.close();
fout.close();
return 0;
}

//这是一个将字符转换为相应的十六进制值的函数
//功能:若是在0-F之间的字符,则转换为相应的十六进制字符,否则返回-1
char CCommWizardDlg::ConvertHexChar(char ch)
{
if((ch>='0')&&(ch<='9'))
return ch-0x30;
else if((ch>='A')&&(ch<='F'))
return ch-'A'+10;
else if((ch>='a')&&(ch<='f'))
return ch-'a'+10;
else return (-1);
}

==========