最近写了一个MFC串口程序,涉及文件发送和保存的功能。

1.打开TXT文件

 1 void CportDlg::OnBnClickedButtonOpenfile()  //打开文件并显示内容
 2 {
 3     CFileDialog opendlg(true, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, (LPCTSTR)_TEXT("TXT Files (*.txt)|*.txt|All Files (*.*)|*.*||"), NULL);
 4     if (opendlg.DoModal() == IDOK){ //显示对话框并允许用户进行选择。
 5         CString filepathname = opendlg.GetPathName(); //文件路径
 6         m_file.SetWindowTextW(filepathname); //在编辑框显示文件路径
 7         CStdioFile fsend;    CString s_one;
 8         if (fsend.Open(filepathname, CFile::typeText | CFile::modeRead)) //只读模式打开txt文件
 9         {
10             while (fsend.ReadString(s_one)) { //逐行读取文件内容
11                 m_send += s_one; m_send += TEXT("\r\n");
12                 m_EditSend.SetWindowTextW(m_send); //将读取的文本显示在编辑框
13             }
14             fsend.Close();
15         }
16     }
17     else return;
18 }

2.接收区的数据保存到TXT文件

 1 void CportDlg::OnBnClickedButtonSavefile() //保存文件为TXT格式
 2 {
 3     CFileDialog savedlg(false, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, (LPCTSTR)_TEXT("TXT Files (*.txt)|*.txt|All Files (*.*)|*.*||"), NULL);
 4     if (savedlg.DoModal() == IDOK){ //显示对话框并允许用户进行选择。
 5         CFile fsave(savedlg.GetPathName(), CFile::modeCreate | CFile::modeReadWrite);
 6         //CString转char[]
 7         static char str[] = ""; int count = m_receive.GetLength();
 8         for (int i = 0; i < count; i++)
 9             str[i] = m_receive[i];
10
11         fsave.Write(str, strlen(str)); //写入文件
12         //fsave.Write(m_receive, m_receive.GetLength() * 2); //读取CString信息长度,必须*2
13         fsave.Flush(); //立即写入,不缓冲
14         fsave.Close(); //文件操作结束关闭
15     }
16     else return;
17 }

以CString类型保存的数据文件,在MFC串口打开文件发生信息丢失,所以将CString改成char[]类型。

转载于:https://www.cnblogs.com/Ivy-yang/p/tuzi-mfc_file.html

MFC文件打开和保存相关推荐

  1. MFC——文件打开和保存对话框(CFileDialog)

    最近要做一个文件打开和保存的对话框,现将相关的代码记录如下,用以备忘! 所用控件: 2个静态标签(Static Text):用以显示功能标签: 2个文本框(Edit):用以显示打开的文件路径全名要保存 ...

  2. MFC中文件打开与保存

    1.文件打开与保存 // NotePad01Dlg.cpp : implementation file //#include "stdafx.h" #include "N ...

  3. MFC实现打开、保存文件对话框和浏览文件夹对话框,把代码直接拷贝到要响应的按钮函数下面就行了

    MFC实现打开.保存文件对话框和浏览文件夹对话框,把代码直接拷贝到要响应的按钮函数下面就行了 一.打开.保存对话框 文件对话框属于通用对话框范畴(另外还有颜色,查找,查找替换,字体,打印等对话框). ...

  4. MFC文件打开格式,MFC默认打开文档后缀(支持打开多图像格式)

    MFC文件打开格式,MFC默认打开文档后缀(支持打开多图像格式)     [尊重原创,转载请注明出处]http://blog.csdn.net/guyuealian/article/details/7 ...

  5. matlab存储文件对话框,Matlab 文件打开与保存对话框

    文件名处理对话框包括打开和保存时所调用的对话框,其调用函数分别是 uigetfile 和 uiputfile.通过对话框获取用户的输入,并返回路径和文件名字符串,然后对获得的数据进一步处理,打开文件或 ...

  6. python保存为excel文件_初级Python:在excel文件打开时保存它

    我的经验是sashkello是正确的,Excel会锁定文件.即使是OpenOffice/LibreOffice也会这样做.他们将文件锁定在磁盘上,并创建临时版本作为工作副本.任何试图访问打开的文件的程 ...

  7. java-简单的文件打开,保存,编辑功能的记事本实现

    下面是源码: package com.txt;import java.awt.*; import java.awt.event.*;import java.io.*;import javax.swin ...

  8. Vim——文件打开、保存、退出命令总结

    一.打开命令 vim filename 二.保存.退出命令 按 ESC,左下角就可以进行输入 命令 功能 :wq 保存并退出 :w 保存但不退出 :q 退出 :q! 强制退出,不保存 :e! 放弃所有 ...

  9. txt文件打开和保存

最新文章

  1. python汽车票票系统_长途客运售票系统
  2. Silverlight-Visifire图表使用示例发布时空白页面的解决办法
  3. cron表达式 每隔8小时_cron表达式详解
  4. 慎用stl中的erase的返回值
  5. 如何root安卓手机_安卓Root+卡开机画面救砖教程丨以一加手机为例
  6. bio-linux_Bio-Linux:稳定,可移植的科学研究Linux发行版
  7. linux内核开启overlay,Linux-overlay启动挂载为只读或写文件异常
  8. MySQL(20)--- 排序
  9. 愚人节谁最皮?华为宣布攻克兽语,小米6复刻版官宣,微信发万元红包...
  10. 一些常用的简单的Lambda写法
  11. AD调出LM358\393元器件不同部分A和B的part
  12. gVerify:前端验证码插件
  13. ecu故障现象_分析及检修汽车ECU常见故障
  14. 如何与低智商的人相处?
  15. GEF教程及demo源码
  16. 400+考研 北京航空航天大学6系计算机学院961计算机专业技术基础资料合辑
  17. mysql参数化查询 in_mysql in 查询参数化
  18. 【CXY】JAVA基础 之 Collection
  19. OpenCV-趣味小游戏-手掌击球
  20. 实验二、贪吃蛇的游戏开发

热门文章

  1. Rxjs--创建操作符
  2. 数组遍历 map()、forEach() 及 字符串切割 split() / 字符串截取 slice()、substring()、substr()...
  3. jQuery Datatables常用配置
  4. jsoup 获取指定页面的所有链接(需后续完善)
  5. 新做了一个项目,一个人做的,关于数据传输的项目(架构说明)
  6. 追求代码质量: 监视圈复杂度
  7. 如何验证自己的网络是否支持ipv6
  8. server 2008 R2 使用笔记
  9. spring--(4)级联属性赋值
  10. Java数据库——事务处理