[英]how to omit extra bits in a file?
I want to omit extra bit in txt file.eg .... ÿ 0111111110111101100011011010010001
in this string we want to omit extra bit ÿ
which is appeared when we save a binary string. 我想省略txt file.eg中的多余位。...111
ÿ 0111111110111101100011011010010001
此字符串中,我们想忽略保存二进制字符串时出现的多余位ÿ
。 Save fun is as follow. 保存乐趣如下。 please help me.
请帮我。
void LFSR_ECDlg::Onsave()
{
this->UpdateData();
CFile bitstream;
char strFilter[] = { "Stream Records (*.mpl)|*.mpl| (*.pis)|*.pis|All Files (*.*)|*.*||" };
CFileDialog FileDlg(FALSE, ".mpl", NULL, 0, strFilter);
if( FileDlg.DoModal() == IDOK )
{
if( bitstream.Open(FileDlg.GetFileName(), CFile::modeCreate | CFile::modeWrite) == FALSE )
return;
CArchive ar(&bitstream, CArchive::store);
CString txt;
txt="";
txt.Format("%s",m_B);//by ANO
AfxMessageBox (txt);//by ANO
txt=m_B;//by ANO
ar <<txt;//by ANO
ar.Close();
}
else
return;
bitstream.Close();
}
Pass CFile::typeBinary
to CFile::Open
when you construct bitstream
. 构造
bitstream
时,将CFile::typeBinary
给CFile::Open
。 Otherwise check what is creating the CString ( m_B
). 否则,检查创建CString(
m_B
)的内容。 The extra character you are seeing looks like a Byte Order Mark.... 您看到的多余字符看起来像字节顺序标记。
void LFSR_ECDlg::Onsave() { this->UpdateData(); 无效LFSR_ECDlg :: Onsave(){this-> UpdateData();
CFile bitstream;
char strFilter[] = { "Stream Records (*.mpl)|*.mpl| (*.pis)|*.pis|All Files (*.*)|*.*||" };
CFileDialog FileDlg(FALSE, ".mpl", NULL, 0, strFilter);
//insertion//by TTT //插入//通过TTT
CFile cf_object;
if( FileDlg.DoModal() == IDOK ){
cf_object.Open( FileDlg.GetFileName(), CFile::modeCreate|CFile::modeWrite);
//char szText[100];
//strcpy(szText, "File Write Test");
CString txt;
txt="";
txt.Format("%s",m_B);//by ANO
AfxMessageBox (txt);//by ANO
int mB_size=m_B.GetLength();
cf_object.Write (m_B,mB_size);
} }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.