测试数据已存在数据库中,通过界面可以显示在客户端,客户端想要通过save data 按钮把数据保存在指定位置,存储格式为txt
界面:
点击保存数据按钮后
保存的数据格式
程序代码为:
CFileDialog *filedlg;
CString sPath;
filedlg=new CFileDialog(TRUE,"txt");
if (filedlg->DoModal()==IDOK)
{
sPath=filedlg->GetPathName();
}
delete (filedlg);
//strFile+=".txt";
CFile file(sPath,CFile::modeCreate|CFile::modeNoTruncate|CFile::modeWrite);//CFile::modeNoTruncate不删除原有数据
if(file.GetLength()!=0)//判断是否文件为空,非空的话不需要换行
{
file.SeekToEnd();
file.Write("\n",strlen("\n"));//换行
}
//file.Write("11",2);
CString srn="\r\n";
ADOConn m_ado;
int i=0;
m_ado.OnnitADOConn();
CString sql="select * from Data order by Frec asc " ;
_RecordsetPtr m_precord;
m_precord=m_ado.GetRecordSet(_bstr_t(sql));
while (m_ado.m_pRecordSet->adoEOF==0)
{
CString s;
s.Format("%4d ",i++);
//MessageBox(s);
file.Write(s,s.GetLength());
s=(char*)(_bstr_t)m_precord->GetCollect("Frec");
file.Write(s,s.GetLength());
s=" "; file.Write(s,s.GetLength());
s=(char*)(_bstr_t)m_precord->GetCollect("Result");
file.Write(s,s.GetLength());
file.Write(srn,srn.GetLength());//换行
m_precord->MoveNext();
}
m_ado.ExitConnect();
file.Close();
MessageBox("数据保存成功");
GetDlgItem(IDC_BUTTON18)->EnableWindow(FALSE);
Sleep(1000);
GetDlgItem(IDC_BUTTON18)->EnableWindow(TRUE);
}