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();
}

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

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

相关推荐
无小道2 小时前
C++——列表初始化
c++·列表初始化
blueSatchel2 小时前
c++action 编写(ros-humble)
c++·ros2
老赵的博客4 小时前
c++面试之从虚函数表到Rtti一次性讲清楚
c++·qt
傲世仙尊5 小时前
System V 进程间通信详解:共享内存、消息队列与信号量(CSDN博客)
linux·开发语言·c++
cvby5 小时前
C++11
开发语言·c++
6Hzlia5 小时前
【Classic 150 刷题计划】 LeetCode 26. 删除有序数组中的重复项 | C++ 快慢双指针经典模板
c++·算法·leetcode
夜不会漫长6 小时前
C++:类和对象(2)
java·javascript·c++
无小道6 小时前
C++ 中 `explicit` 关键字详解:彻底理解隐式类型转换
c++·explicit
蒸蒸yyyyzwd6 小时前
cpp 选手秋招学习笔记 day34
c++·八股
Tairitsu_H6 小时前
[C++] C++11类和STL的新特性
开发语言·c++·stl·c++11