hur.cn - 华软网

 热门搜索

如何将多个EDIT写入文本并能读取

  作者:未知    来源:网络    更新时间:2011/9/8
有10个EDIT编辑框EDIT1到EDIT10,都是Cstring类的,用一个按钮实现 保存所有的EDIT内容,下次运行时能读取,求大牛实现,最好有源码
---华软 网友回答---
CEdit::GetWindowText
CEdit::SetWindowText
---华软网友回复---
#define inifilepath   "./config.ini"
写入
WritePrivateProfileString("section","EDIT1",str1,inifilepath);
...
WritePrivateProfileString("section","EDIT10",str10,inifilepath);

读取
GetPrivateProfileString("section", "EDIT1", NULL, str1, sizeof(str1), inifilepath) ;
...
GetPrivateProfileString("section", "EDIT10", NULL, str10, sizeof(str10), inifilepath) ;
---华软网友回复---
是将 所有的 EDIT 内容写入一个txt文本,
---华软网友回复---
下次运行指的是重新运行程序吗?
如果是的话可以用文件保存,定义一个结构体,包含10个控件信息,每次将这个结构体保存到文件中,下次读出来就行了,或者写个配置文件也可以
---华软网友回复---
引用 4 楼 kiven2010 的回复:
下次运行指的是重新运行程序吗?
如果是的话可以用文件保存,定义一个结构体,包含10个控件信息,每次将这个结构体保存到文件中,下次读出来就行了,或者写个配置文件也可以


怎么操作啊 ?
---华软网友回复---
写文件,写数据库也行

CFile file;
file.Open(L"c:\\xx.txt",CFile::modeWrite);
file.Write(strTxt,strlen(strTxt));

读文件:
file.ReadString
---华软网友回复---
写文件,存数据更好。

CFile file1;
file1.Open(L"c:\\test.txt",CFile::modeWrite);
file1.Write(strTxt.GetBuffer(),iLen);

下次运行时,读取文件,或数据库就可以了。
基本知识要自己查资料啦。
---华软网友回复---
引用 7 楼 chinatcp 的回复:
写文件,存数据更好。

CFile file1;
file1.Open(L"c:\\test.txt",CFile::modeWrite);
file1.Write(strTxt.GetBuffer(),iLen);

下次运行时,读取文件,或数据库就可以了。
基本知识要自己查资料啦。


这么的简单我早实现了。。。
---华软网友回复---
在你的保存按钮中添加:
CStdioFile file("1.txt",CFile::modeWrite | CFile::modeCreate);
CString str;

GetDlgItemText(IDC_EDIT1,str);
str+="\r\n";
file.WriteString(str);

GetDlgItemText(IDC_EDIT2,str);
str+="\r\n";
file.WriteString(str);//只写了两个作为范例

file.Close();


在OnInitDialog中添加:

CStdioFile file;
BOOL bOpen = file.Open("1.txt",CFile::modeRead);
if (!bOpen)
{
return TRUE;
}
CString str;

file.ReadString(str);
SetDlgItemText(IDC_EDIT1,str);

file.ReadString(str);
SetDlgItemText(IDC_EDIT2,str);

file.Close();

这样就可以了~
---华软网友回复---
其实就是很简单啊。
---华软网友回复---
引用 9 楼 hedengxiang2011 的回复:
在你的保存按钮中添加:
CStdioFile file("1.txt",CFile::modeWrite | CFile::modeCreate);
CString str;

GetDlgItemText(IDC_EDIT1,str);
str+="\r\n";
file.WriteString(str);

GetDlgItemText(IDC_EDIT2,str);
str……


如果采用追加 保存 和读取最后一次保存结果 呢?大牛
---华软网友回复---
9楼方法很好啊,其实就是txt文件的逐行对写~
---华软网友回复---
引用 12 楼 zhd320 的回复:
9楼方法很好啊,其实就是txt文件的逐行对写~


我知道9楼的可以,如果我要追加保存  file.SeekToEnd()追加保存不行的 
---华软网友回复---
引用 10 楼 chinatcp 的回复:
其实就是很简单啊。


奇了怪了,教你方法了,你为什么就不能自己去琢磨一下剩下的应用呢?MSDN,百度,谷歌等等……
你咋不叫我帮你做工程?干脆我帮你学习吧。。。
---华软网友回复---
引用 11 楼 qq317263627 的回复:
引用 9 楼 hedengxiang2011 的回复:
在你的保存按钮中添加:
CStdioFile file("1.txt",CFile::modeWrite | CFile::modeCreate);
CString str;

GetDlgItemText(IDC_EDIT1,str);
str+="\r\n";
file.WriteString(str);

GetDlg……



sorry  上个帖子引用错了……


奇了怪了,教你方法了,你为什么就不能自己去琢磨一下剩下的应用呢?MSDN,百度,谷歌等等……
你咋不叫我帮你做工程?干脆我帮你学习吧。。。

追加不了是吧?
你自己看看open函数中第二个参数的用法吧……
---华软网友回复---
引用 15 楼 hedengxiang2011 的回复:
引用 11 楼 qq317263627 的回复:
引用 9 楼 hedengxiang2011 的回复:
在你的保存按钮中添加:
CStdioFile file("1.txt",CFile::modeWrite | CFile::modeCreate);
CString str;

GetDlgItemText(IDC_EDIT1,str);
str+="\r\n";
file.W……



追加自己 写好了       
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。