当前位置: 首页 > news >正文

网站建设政务新媒体应用中心软件

网站建设政务新媒体,应用中心软件,哪里找需要网站建设的,外贸公司用的采购储运财务软件CFile类 信息源自官方文档#xff1a;https://learn.microsoft.com/zh-cn/cpp/mfc/reference/cfile-class?viewmsvc-170。 CFile是Microsoft 基础类文件类的基类。它直接提供非缓冲的二进制磁盘输入/输出设备#xff0c;并直接地通过派生类支持文本文件和内存文件。CFile与…CFile类 信息源自官方文档https://learn.microsoft.com/zh-cn/cpp/mfc/reference/cfile-class?viewmsvc-170。 CFile是Microsoft 基础类文件类的基类。它直接提供非缓冲的二进制磁盘输入/输出设备并直接地通过派生类支持文本文件和内存文件。CFile与CArchive类共同使用支持MFC对象的串行化。 CFile采用API函数做内核 1.Open() virtual BOOL Open(LPCTSTR lpszFileName,UINT nOpenFlags,CFileException* pError NULL);virtual BOOL Open(LPCTSTR lpszFileName,UINT nOpenFlags,CAtlTransactionManager* pTM,CFileException* pError NULL);a. lpszFileName 一个包含所需文件的路径的字符串。 该路径可以是相对路径、绝对路径或网络名称 (UNC)。 b.nOpenFlags 用于定义文件的共享和访问模式的 UINT。 它指定打开文件时要执行的操作。 可以使用按位“或”(|) 运算符来组合选项。 一个访问权限和一个共享选项是必需的modeCreate 和 modeNoInherit 模式是可选的。 有关模式选项的列表请参阅 CFile 构造函数。 c.pError 指向接收失败操作状态的现有文件异常对象的指针。 d.pTM 指向 CAtlTransactionManager 对象的指针 这里附带说一下我们在Windows文件中常会看见一种叫文件句柄的东西其定义如下 在文件I/O中要从一个文件读取数据应用程序首先要调用操作系统函数并传送文件名并选一个到该文件的路径来打开文件。该函数取回一个顺序号即文件句柄file handle该文件句柄对于打开的文件是唯一的识别依据。要从文件中读取一块数据应用程序需要调用函数ReadFile并将文件句柄在内存中的地址和要拷贝的字节数传送给操作系统。当完成任务后再通过调用系统函数来关闭该文件。 这里常见的参数其实就第一和第二个参数你有路径有打开方式打开一个文件就不是问题。 打开方式nOpenFlags CFile::modeCreate 文件以创建形式打开(创建一个新的文件老文件数据将会丢失 可以配合CFile::modeNoTruncate 一起使用不会覆盖老文件)CFile::modeRead 采用读取方式打开文件CFile::modeWrite 采用写入方式打开文件CFile::modeReadWrite 采用读写方式打开文件CFile::modeNoTruncate 采用不截断形式打开文件(与CFile::modeCreate配合使用在文件存在的情况下不会创建新的文件 与CFile::modeWrite配合使用在文件有数据的情况下写入数据不会清空文件数据(会存在数据覆盖现象下面会讲文件写入位置设置方法))CFile::modeNoInherit 防止这个将要被打开的文件来源于子进程(实际几乎用不到)CFile::typeBinary 文件数据将会以二进制的形式显示CFile::shareDenyNone 采用共享形式打开文件(这个文件在不做读写的情况下打开)函数内部调用API CreateFile(lpszFileName, dwAccess, dwShareMode, sa, dwCreateFlag, dwFlags, NULL);2.GetLength() int nlen file_.GetLength(); //获取文件的当前总长度(读或写文件时可以随时调用函数查看文件的长度)方法函数内部调用API GetFileSize(m_hFile, liSize.HighPart);3.Read() char GetStr[4096] {0}; file_.Read(GetStr,4096); //读取文件(串口)方法 函数内部调用API ReadFile(m_hFile, lpBuf, nCount, dwRead, NULL); //内部采用同步读取方式(在串口读取方面我更喜欢异步方式相关参考我的API串口异步文章)在官方文档中描述为 virtual UINT Read(void* lpBuf,UINT nCount);4.Write() char GetStr[4096] {0}; memcpy(GetStr,123yui,sizeof(char) * 6); file_.Write(GetStr,4096); //写入文件(串口)方法 函数内部调用API WriteFile(m_hFile, lpBuf, nCount, nWritten, NULL);5.Close() file_.Close(); //文件关闭方法(不需要操作这个打开文件时随手释放文件句柄)函数内部调用API CloseHandle(m_hFile);这里如果都是内部使用的话全部都是基于C的。没有UNICODE编码情况会比较简单。当我们需要用到MFC问题时会引入宽字符的CString变量此时使用CStdioFile这个子类会更好。 CStdioFile类 信息源自官方文档https://learn.microsoft.com/zh-cn/cpp/mfc/reference/cstdiofile-class?viewmsvc-170。 它时CFile的子类比较关键的是它对READ、SEEK、WRITE这三个函数进行了重写。 它可以执行readstring函数直接提取出LPTSTR类型的CString来。 virtual LPTSTR ReadString(LPTSTR lpsz,UINT nMax);virtual BOOL ReadString(CString rString);这里的读取是一行一行的读比起CFile来说就灵活的多了。 实战案例 我们准备如下MFC程序 准备如此一个CSV文件 在HIT按钮下添加如下指令 void CMFCCSVLABDlg::OnBnClickedHit() {// TODO: 在此添加控件通知处理程序代码CFile file;file.Open(_T(./test.csv), CFile::modeRead);char buf[1024];file.Read(buf,1024);CString str(buf);MessageBox(str,_T(str));file.Close();CStdioFile CSFile;CSFile.Open(_T(./test.csv), CFile::modeRead);CString C_buf_1;CSFile.ReadString(C_buf_1);MessageBox(C_buf_1, _T(C_buf_1));CString C_buf_2;CSFile.ReadString(C_buf_2);MessageBox(C_buf_2, _T(C_buf_2));CSFile.Close(); }可以看到把两种不同的读取方式都试过了实际的结果为 可以看到结论已经很清晰了。怎么样读取数据就这么简单。
http://www.hkea.cn/news/14352416/

相关文章:

  • 专业设计网站排名专门做网站搜索优化的公司
  • 建设银行总行信息网站ios开发者中心
  • 新手做网站流程晋江友情链接是什么意思
  • 麓谷做网站的公司wordpress 嵌套评论
  • 建站视频佛山做网络优化的公司
  • 公司网站模板源码黄石做网站建设的
  • 桐梓县工程建设交易网站杭州seo外包
  • SEO网站价格西餐甜点网站建设
  • 营销型网站开发流程包括wordpress菜单小图标
  • html网站首页设计买了个网站源码后要怎么用
  • spark怎么做网站数据库专网建设是什么
  • 邯郸市城乡建设管理局网站网站建设图
  • 男生可以做网站编辑工作吗建设网站 无法显示图片
  • 电子商务网站设计规划书电子商务网站规书
  • 论述网站建设的步骤资阳住房和城乡建设厅官方网站
  • 广告素材网站哪个比较好wordpress 亲子主题
  • 郑州做网站公司排名wordpress提示发布失败但是成功
  • 观澜做网站公司网上怎么做销售
  • 爱网之家优化模型
  • wordpress导航栏字体义乌网站建设优化案例
  • 邢台网站设计怎么做鄂尔多斯建设局网站
  • mvc在网站开发中的应用优化设计答案六年级上册
  • 企业网站建设流程步骤做网站如何备案
  • 做公装的什么网站好dz 一步一步教你做网站
  • 网站添加手机站wordpress手机图片站
  • 网站开发必须要要掌握的语言网站策划书模板大全
  • 佳木斯网站建设公司网站开发者工具
  • 深圳网站建设公司建设成都精品网站建设
  • 做网站与运营一般多少钱查询网站最新域名
  • 网站的制作视频网站建设是设