VS2008, MFC 文件的操作4 - CFile类, CFileDialog类 方式 文本方式打开

2023-10-27

接上一节笔记:VS2008, MFC 文件的操作3 - Win32 API 方式 文本方式打开

1. 代码 及 点击 子菜单项 WriteFile 时候的可选文件 

void Cvs2008_SX_jiaocheng12View::OnFileWritefile()
{
	// TODO: 在此添加命令处理程序代
	//CFilel类
	//CFile file(L"5.txt",CFile::modeCreate | CFile::modeWrite);
	//file.Write(L"yyyyyxxxxxxZZZZZZ",strlen("yyyyyxxxxxxZZZZZZ"));
	//file.Close();
	//写入文件窗口过程
	CFileDialog fileDlg(FALSE);//创建文件对话框用 参数FALSE
	fileDlg.m_ofn.lpstrTitle= L"My file SAVE dialog box";
	fileDlg.m_ofn.lpstrFilter = L"Text Files(*.txt\0*.txt\0All Files(*.*)\0*.8\0\0";//注意\0的使用,最后要两个\0
	fileDlg.m_ofn.lpstrDefExt = L"txt";
	if(IDOK == fileDlg.DoModal())//模态对话框
	{
		CFile file(fileDlg.GetFileName(),CFile::modeCreate | CFile::modeWrite);
		file.Write(L"Open a dialog box give a name to file and write this context to it",strlen("Open a dialog box give a name to file and write this context to it"));
		file.Close();
	}
	
}

2. 代码及点击 子菜单ReadFile 

void Cvs2008_SX_jiaocheng12View::OnFileReadfile()
{
	// TODO: 在此添加命令处理程序代
	//CFile类
	//CFile file(L"5.txt",CFile::modeRead);
	//char *pBuf;
	//DWORD dwFileLen;
	//dwFileLen = file.GetLength();
	//pBuf = new char[dwFileLen+1];
	//pBuf[dwFileLen] = 0;
	//file.Read(pBuf,dwFileLen);
	
			//char 和wchar 转换
	//int num = MultiByteToWideChar(0,0,pBuf,-1,NULL,0);
	//wchar_t *wide = new wchar_t[num];
	//MultiByteToWideChar(0,0,pBuf,-1,wide,num);

	//MessageBox(wide);
	//file.Close();
	//打开文件窗口过程
	CFileDialog fileDlg(TRUE);//打开文件对话框用 参数TRUE
	fileDlg.m_ofn.lpstrTitle= L"My file OPEN dialog box";
	fileDlg.m_ofn.lpstrFilter = L"Text Files(*.txt\0*.txt\0All Files(*.*)\0*.8\0\0";//注意\0的使用,最后要两个\0
	//fileDlg.m_ofn.lpstrDefExt = L"txt";//不需要缺省扩展名
	if(IDOK == fileDlg.DoModal())//模态对话框
	{
		CFile file(fileDlg.GetFileName(), CFile::modeRead);//为读取而打开
		char *pBuf;
		DWORD dwFileLen;
		dwFileLen = file.GetLength();
		pBuf = new char[dwFileLen+1];
		pBuf[dwFileLen] = 0;
		file.Read(pBuf,dwFileLen);
		
				//char 和wchar 转换
		int num = MultiByteToWideChar(0,0,pBuf,-1,NULL,0);
		wchar_t *wide = new wchar_t[num];
		MultiByteToWideChar(0,0,pBuf,-1,wide,num);

		MessageBox(wide);
		file.Close();
	}
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VS2008, MFC 文件的操作4 - CFile类, CFileDialog类 方式 文本方式打开 的相关文章

随机推荐

  • (详解)用C语言实现一个能够连续展开的扫雷。

    功能介绍 我们实现一个扫雷 那么必须具有其基本的功能 如下图 那么相比较一般的用C实现的扫雷 我们需要添加如下的三个功能 防止第一次被炸死 标记雷 连续展开 代码实现以及解释 一 主函数的实现以及扫雷的构思框架 test c int mai
  • 自举电容的工作原理-3句话总结

    1 一道面试题 照例 先抛出来一道面试题 Buck电路的SW引脚通常会放置一颗小电容 这颗电容有什么用 这个问题问得比较细 非常考验被面试者的硬件基本功 2 似懂非懂的答案 有小伙伴可能不太清楚这颗电容的作用 回答不上来 也有小伙伴脱口而出
  • 1 shell备份数据库MYSQL案例

    SHELL编程实战MYSQL备份脚本 编程思路 1 备份MYSQL数据库 备份的工具的选择 数据量小于100G使用全备 基于mysqldump工具备份 备份会锁表 数据量大于100G使用增量备份 基于xtrabackup工具备份 Innod
  • STM32CubeMX新建工程并点亮一个LED

    可提前看 STM32CubeMX环境安装 保姆级 目录 进入STM32CubeMX界面 双击软件 可能会出现的弹窗 更改固件路径 新建工程 进入配置环境 以一个点灯程序为例 GPIO配置 输出电平设置 输出模式 上下拉 输出速度 User
  • 方差

    什么是随机变量的方差 方差反映随机变量取值的什么性质 方差是一个常用来体现随机变量的取值分散程度的量 设 X X X是一个随机变量 若 E X
  • (c语言)输出Programming is fun!

    题目要求 输入 无 输出 Programming is fun 具体代码如下 include
  • 打印从1到最大的n位数

    链接 打印从1到最大的n位数 牛客题霸 牛客网 nowcoder com 描述 输入数字 n 按顺序打印出从 1 到最大的 n 位十进制数 比如输入 3 则打印出 1 2 3 一直到最大的 3 位数 999 1 用返回一个整数列表来代替打印
  • Hands-On Hyperledger Fabric——Fabric的证书(账号)体系

    文章目录 Fabric证书是什么 Fabric证书服务器 Fabric ca fabric ca server的初始化 fabric ca server 配置文件 fabric ca client 使用 将Fabric ca server绑
  • GPT分区规划与各分区作用解析

    1 GPT分区规划 安装用EFI引导的Windows 10前 手动为硬盘分区 推荐方案如下 序号 分区名 起始柱面 磁头 扇区 容量 MBR保留扇区 GPT分区表 1MB 0 ESP分区 0 32 33 96MB 空白 预留给扩展ESP时使
  • 【H5】 svg画贝塞尔曲线方法

    H5 svg画贝塞尔曲线方法 d属性M 起始坐标 L 结束坐标 H 水平线 V 垂直线 A 圆弧 Z 闭合路劲 C S Q T贝塞尔曲线大写为绝对坐标 具体的坐标位置 小写为相对坐标 相对起始坐标点的具体长度 A命令x 径y半径角度弧长 0
  • 关于虚拟机.vmdk与.ovf 磁盘装载问题

    与 vmdk磁盘装载相关的两种方式 0 前言 1 只有 vmdk文件 2 带有 ovf vmdk文件 0 前言 提一嘴 现在用的比较多的虚拟机创建或者拷贝方式有两种 第一种是iso光盘映像装载 第二种是OVF导入 分别为 ISO的装载方式最
  • build JAX from source code

    Building from source JAX documentation
  • visual studio:不能加载.vdproj

    总结 下载后关闭所有vs项目 重新打开目标工程 需要完成次扩展的后续安装任务 参考 https www cnblogs com hofmann p 11183457 htm
  • 122FPS,51.9mAP 超轻量关键点检测算法PP-TinyPose来啦!

    在人机交互场景中 机器可以识别人的手势 肢体动作 表情 你可知背后的核心技术是什么吗 没错 就是关键点检测技术 它能帮你实现精准的人机交互任务 如手势控制 智能健身 体感游戏等 还可以识别交通违规 打架斗殴 违规操作等异常行为 话不多说 我
  • DVWA——XSS(Dom low&medium)

    此文章只用于学习 请勿用作其他违法犯罪行为 以下部分文字内容以图片形式展示 因为JS代码打不上去 目录 前言 XSS攻击流程 XSS的危害 XSS的漏洞类型 JS基本语句 XSS Dom Low XSS Dom Medium 前言 XSS被
  • Ubantu扩展SWAP区,使用gparted,以及死机非热启动解决方法

    Ubantu扩展SWAP区 使用gparted 以及死机非热启动解决方法 Swap分区 强制重启 扩充SWAP Swap分区 Swap分区是用来扩展内存的 即使用一部分硬盘空间作为交换 个人认为电脑内存大于16G即不需要分配Swap空间 我
  • Python字符串替换的3种方法

    Python字符串替换笔记主要展示了如何在Python中替换字符串 Python中有以下几种替换字符串的方法 本文主要介绍前三种 replace方法 常用 translate方法 re sub方法 字符串切片 根据Python字符串切片方法
  • springboot + redis多数据源 + jedis集群模式

    最近有个项目需要redis支持多个集群 网上搜了下 发现有个开源的项目spring boot starter dynamic redis 代码写的挺好 可惜只有单机版的 于是fork了他的代码改了下 支持jedis集群模式 新代码昨天已提交
  • 如何用人工智能预测股票(完整项目)

    本文由 沈庆阳 所有 转载请与作者取得联系 前言 十分钟实现人工智能股价预测 是一个深度学习的练习项目 其通过机器学习算法 根据过去几年与某只股票相关的K线走势 公司相关报道的情感分析作为数据集 通过训练来得到可以预测股价的机器学习模型 并
  • VS2008, MFC 文件的操作4 - CFile类, CFileDialog类 方式 文本方式打开

    接上一节笔记 VS2008 MFC 文件的操作3 Win32 API 方式 文本方式打开 1 代码 及 点击 子菜单项 WriteFile 时候的可选文件 void Cvs2008 SX jiaocheng12View OnFileWrit