MFC结构体写入文件和读取

先定义一个结构体;

struct myTxc

{

char c;

CString name;

int value;

} txc;

读和写的菜单代码;

cpp 复制代码
void CjgtrwView::On32771()
{
	// TODO: 在此添加命令处理程序代码
	CFile file(_T("test1.txt"), CFile::modeCreate | CFile::modeWrite);
	txc.name = _T("测试一");
	txc.value = 999;
	txc.c = 't';
	//fwrite(&sa, sizeof(sa), 1, fp);
	file.Write(&txc, sizeof(txc));
	file.Close();
}

void CjgtrwView::On32772()
{
	// TODO: 在此添加命令处理程序代码
	CString str1;
	CFile file(_T("test1.txt"),CFile::modeRead);
	//fread(&sb,sizeof(sb),1,fp);
	myTxc txc2;
	file.Read(&txc2, sizeof(txc2));
	
	CClientDC dc(this);
	dc.TextOutW(20, 20, txc2.name);
	str1.Format(_T("%d"), txc2.value);
	dc.TextOutW(20, 50, str1);
	str1.Format(_T("%c"), txc2.c);
	dc.TextOutW(20, 80, str1);

	file.Close();
}

先给结构体变量赋值,然后写入文件;再读取,并显示;

保存的是二进制格式,打开文件查看是乱码;

相关推荐
杜子不疼.6 小时前
【C++ AI 大模型接入 SDK】 - DeepSeek 模型接入(上)
开发语言·c++·chatgpt
石山代码7 小时前
C++ 内存分区 堆区
java·开发语言·c++
张小姐的猫9 小时前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
做人求其滴11 小时前
面试经典 150 题 380 274
c++·算法·面试·职场和发展·力扣
见叶之秋11 小时前
C++基础入门指南
开发语言·c++
计算机安禾11 小时前
【c++面向对象编程】第42篇:模板特化与偏特化:为特定类型定制实现
开发语言·c++·算法
玖釉-12 小时前
C++ 中的循环语句详解:while、do...while、for、嵌套循环与循环控制
开发语言·c++·算法
欧米欧12 小时前
C++进阶数据结构之搜索二叉树
开发语言·数据结构·c++
青小莫12 小时前
C++之vector讲解
c++·stl
计算机安禾13 小时前
【c++面向对象编程】第41篇:函数模板与类模板:泛型编程的基石
开发语言·c++·算法