MFC从多个EDIT中读取和保存文件

本文介绍了一个使用MFC的对话框类实现从文件读取及保存编辑控件内容的方法。具体包括创建文件对话框让用户选择文件路径,将编辑控件的内容保存到指定文件,以及从文件中读取数据并显示在相应的编辑控件上。

在网上查了蛮多自资料,但各种都是复制粘贴的,很多都不太能用,然后许多又和自己想要的不太一样,摸索了一下,索性自己总结了一下:

下面的程序功能是:自己打开保存路径,输入保存的文件名字,然后保存多个editcontrol控件的内容,每个内容用换行符隔开

void CNewSetDlg::OnBnClickedParaSaveButton()
{
	// TODO: Add your control notification handler code here
	CString str;
	CFileDialog fg(false,_T("*.txt"),NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
		_T("Text File(*.txt)|*.txt|Excel CSV File(*.csv)|All File(*.*)|*.*||"),NULL);
	if (fg.DoModal()==IDOK)
	{
		CString filename=fg.GetPathName();
		CStdioFile mFile(filename,CFile::modeCreate|CFile::modeWrite);
		GetDlgItemText(IDC_JOINT_NUM_EDIT,str);
		mFile.WriteString(str+"\n");
		
		GetDlgItemText(IDC_THETA_EDIT,str);
		mFile.WriteString(str+"\n");

		GetDlgItemText(IDC_ALPHA_EDIT,str);
		mFile.WriteString(str+"\n");

		GetDlgItemText(IDC_A_EDIT,str);
		mFile.WriteString(str+"\n");

		GetDlgItemText(IDC_D_EDIT,str);
		mFile.WriteString(str+"\n");

		mFile.Close();
		
	}

}
下面的程序是读出数据分别到原来的editcontrol控件中显示出来:

void CNewSetDlg::OnBnClickedParaInputButton()
{
	// TODO: Add your control notification handler code here
	CString str;
	CString filename;
	CFileDialog fg(TRUE,_T("*.txt"),NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
		_T("Text File(*.txt)|*.txt|Excel CSV File(*.csv)|All File(*.*)|*.*||"),NULL);
	if(fg.DoModal())
		filename=fg.GetPathName();
	CStdioFile mFile(filename,CFile::modeRead);
	BOOL ReadString(CString &str);

	while(mFile.ReadString(str))
	{
		//mFile.Seek(0,CFile::begin);
		//mFile.ReadString(str);
		SetDlgItemText(IDC_JOINT_NUM_EDIT,str);
		//mFile.ReadString(str2);
		//SetDlgItemText(IDC_THETA_EDIT,str);
		//mFile.ReadString(str3);
		//SetDlgItemText(IDC_ALPHA_EDIT,str);
		//mFile.ReadString(str4);
		//SetDlgItemText(IDC_A_EDIT,str);
		//mFile.ReadString(str5);
		//SetDlgItemText(IDC_D_EDIT,str);
	}
	
	UpdateData(FALSE);
	mFile.Close();
}



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值