windows API读写二进制文件

其实,如果你学习过C语言的话,直接用 stdio.h

中函数是最简单的,也就是使用 fopen( "xxxx.xxx", "rb" ); 然后再调用 fread/fwrite; 关闭时调用 fclose 就可以了。

如果使用 Windows Native API 中的 CreateFile, 是不需要区分什么二进制不二进制的,只要此函数的返回值不是 INVALID_HANDLE_VALUE, 就可以继续使用 ReadFile/WriteFile 来进行读写,最后再用 CloseHandle 来关闭。这在 MSDN 的 "Platform SDK: Files and I/O" 中直接有例子。

再深入一点说,stdio.h 中 fopen 时所谓的 "rb" 或 "wb" 的 "b" 即二进制模式,与文本模式("t")的区别仅仅在于对于是否解析 0x0D & 0x0A (回车和换行符)而已,这主要表现在 fgets / fscanf 之类要对字符串进行操作的函数上,事实上即使用 "b" 方式调用 fopen 后 fgets/fscanf 等函数也是可用的。如果不涉及字符串,"b" 和 "t" 没有多大的差别。

什么是二进制:

通用二进制程序就是一个包,Bundle,又译束,是Mac OS X系统中一种应用程序格式,实际上是特殊的文件夹可以直接双击来运行,文件夹中包含主程序、各种资源、文档和帮助文件等,使得Mac OS X中的软件一般无需安装,复制到硬盘上即可运行,且易于本地化和国际化。Carbon和Cocoa是两种Mac平台的应用程序框架(类似于MFC、VCL、GTK+、Qt等),前者能兼容Mac OS 8-9的API,因此能够生成可以运行于Mac OS Classic和OS X的应用程序,后者则只能生成OS X程序,但可能能够运行于IBM PowerPC RISC芯片和Intel x86 CISC芯片两种构架的Mac OS X系统中,即Universal Binary ——通用二进制程序。]?

时间: 2024-08-02 07:03:30

windows API读写二进制文件的相关文章

C++ Windows API 读写INI文件

BOOL WritePrivateProfileString( LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名 LPCTSTR lpKeyName, // lpAppName 下的一个键名,也就是里面具体的变量名 LPCTSTR lpString, // 键值,也就是数据 LPCTSTR lpFileName // INI文件的路径 ); DWORD GetPrivateProfileString( LPCTSTR lpAppName, // INI

Delphi Windows API判断文件共享锁定状态

一.概述 锁是操作系统为实现数据共享而提供的一种安全机制,它使得不同的应用程序,不同的计算机之间可以安全有效地共享和交换数据.要保证安全有效地操作共享数据,必须在相应的操作前判断锁的类型,然后才能确定数据是否可读或可写,从而为开发出健壮的程序提供切实依据.   同样,在Windows中,文件可以共享模式打开,它也涉及到锁的操作问题.根据Windows中文件共享时加锁范围的大小,锁可分为全局锁和局部锁:全局锁以锁定文件全部内容为特征,而局部锁以锁定文件的局部内容为特征,且文件的锁定区域不可重复.根

C/C++读写二进制文件

C++读写二进制文件 最近在给android层提供支持,因此代码都是用标准库库函数写出来的,好多windows和第三方的库不能或者很难使用,下面有我在读写二进制文件时候的一些心得,也算是一种总结吧 1.读二进制信息 1 bool bRet = true; 2 std::ofstream fout(szDestFile, std::ios::binary | std::ios::app); 3 std::ifstream fin(szOrigFile, std::ios::binary); 4 5

Windows API 大全

常用Windows API1. API之网络函数WNetAddConnection 创建同一个网络资源的永久性连接WNetAddConnection2 创建同一个网络资源的连接WNetAddConnection3 创建同一个网络资源的连接WNetCancelConnection 结束一个网络连接WNetCancelConnection2 结束一个网络连接WNetCloseEnum 结束一次枚举操作WNetConnectionDialog 启动一个标准对话框,以便建立同网络资源的连接WNetDis

一些Windows API导致的Crash以及使用问题总结(API的AV失败,可以用try catch捕捉后处理)

RegQueryValueEx gethostbyname/getaddrinfo _localtime64 FindFirstFile/FindNextFile VerQueryValue CreateFileMapping相关 SetDllDirectory Windows API就没有问题.没有BUG吗?答案是否定的!代码都是写出来,怎么可能完全没有问题呢?下面我们就来看看目前发现有哪些Windows API是有问题的,或者说使用上面有误区的. 1.RegQueryValueEx 首先看看

Windows API教程文件系统

本篇文章主要介绍了"Windows API教程文件系统",主要涉及到Windows API教程文件系统方面的内容,对于Windows API教程文件系统感兴趣的同学可以参考一下. 索引 概念简介 文件对象 文件流 文件句柄 文件指针 文件系统操作 常见 API 高级文件操作 本讲程序功能列表 CreateFile 具体参数 返回值 DeleteFile 参数 返回值 CopyFile.MoveFile.FindFirstFile ReadFile GetCurrentDirectory

Windows API参考大全新编

书名:新编Windows API参考大全 作者:本书编写组 页数:981页 开数:16开 字数:2392千字 出版日期:2000年4月第二次印刷 出版社:电子工业出版社 书号:ISBN 7-5053-5777-8 定价:98.00元 内容简介 作为Microsoft 32位平台的应用程序编程接口,Win32 API是从事Windows应用程序开发所必备的.本书首先对Win32 API函数做完整的概述:然后收录五大类函数:窗口管理.图形设备接口.系统服务.国际特性以及网络服务:在附录部分,讲解如何

C、C++控制台程序、Windows API程序、MFC程序理解与比较

在编程语言中,函数是一个很重要的概念,其身影无处不在.在面向过程的编程方式中,函数更是程序的基本构建模块,在面向对象的编程方式中,函数演变为类或对象的成员(当然也可以使用与类无关的函数).函数由函数头和函数体组成.函数头包括域属性(如external.static或类域).返回值类型.函数名.及参数.域属性包括其在多文件编程中的可见范围,是否是属于某一个类的成员?返回值类型是指函数返回的值的具体数据类型(可以理解为函数输出的一部分).函数名是函数保存在内存代码区的首地址,用于函数的调用及函数指针

WINDOWS API函数说明

Windows API函数大全,从事软件开发的朋友可以参考下 1. API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelConnection 结束一个网络连接 WNetCancelConnection2 结束一个网络连接 WNetCloseEnum 结束一次枚举操作 WNetConnectionDialog 启动一个