VS2019 MFC数据怎么写在工具里,下次打开工具还能用
时间: 2024-09-30 13:13:16 浏览: 28
在Visual Studio 2019 (MFC) 中,如果你想保存用户设置、配置数据或其他需要持久化的数据,并使其在关闭和再次打开工具时可用,可以使用MFC的CResource类或者CFile类配合XML、JSON等文件格式来实现。
1. **CResource**:你可以将数据存储在应用程序资源 (.rc) 文件中,这是一种内嵌在程序二进制中的文件。例如,你可以创建一个名为"MyData.res"的资源文件,在其中定义一个字符串数组或结构体。当你需要访问这些数据时,通过`AfxResHandle()`函数获取资源句柄。
```cpp
CString data;
HRSRC hRes = AfxFindResource(MAKEINTRESOURCE(IDC_MYDATA), RT_RCDATA);
if (hRes)
{
HGLOBAL hg = LoadResource(NULL, hRes);
LPBYTE pData = LockResource(hg);
int size = SizeofResource(NULL, hRes);
data = static_cast<CString>(pData, size);
UnlockResource(hg);
}
```
2. **CFile或fstream**:另一种方法是将数据写入到硬盘上文件中,如XML或JSON文件。使用CFile类操作文本文件,或者使用CArchive类处理更复杂的数据结构。
```cpp
CFile configFile("MyData.xml", CFile::modeCreate | CFile::modeWrite);
CXmlSerializer serializer(configFile);
serializer.Serialize(_T("<YourRootTag><SomeData>your_value</SomeData></YourRootTag>"));
configFile.Close();
```
下次打开工具时,你可以读取相同的文件位置,使用类似的方法重新加载数据:
```cpp
CFile configFile("MyData.xml", CFile::modeRead);
// 使用解析库(如TinyXML或jsoncpp)加载XML或JSON内容
```
阅读全文