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

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

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

相关推荐
王老师青少年编程9 小时前
2026年6月GESP真题及题解(C++一级):交税
c++·题解·真题·gesp·一级·2026年6月·交税
疋瓞13 小时前
python和C++对比(1)_数据类型和数据结构
数据结构·c++·python
C语言小火车13 小时前
C++ 堆排序深度精讲:基于完全二叉树的选择排序进化,最坏情况 O(n log n) 的稳定王者
开发语言·c++·算法·排序算法·堆排序
ALex_zry14 小时前
C++26 std::complex 结构化绑定详解:auto [re, im] = c
c语言·开发语言·c++
_olone16 小时前
Luogu P2704 [NOI2001] 炮兵阵地
c++·算法·状压dp
c2385616 小时前
互斥锁高频面试题全解:从基础概念到底层实现,一文通关
java·c++·面试·职场和发展
nianniannnn16 小时前
c++复习自存--继承
开发语言·c++
旖-旎17 小时前
《LeetCode 746 使用最小花费爬楼梯 || LeetCode 91 解码方法》
c++·算法·leetcode·动态规划
ALex_zry18 小时前
C++26 constexpr 异常详解:编译期也能 throw/catch
java·jvm·c++
王老师青少年编程18 小时前
2026年6月GESP真题及题解(C++二级):完全平方数计数
c++·题解·真题·gesp·二级·2026年6月·完全平方数计数