c代码写数据到二进制的bin文件中
需要将数据写入到bin文件中,打开该文件是一堆乱码,增加数据的保密性
例如:要写入的数据为一个字符串,加上若干个int型整数
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
using namespace std; int main(int argc, char* argv[])
{
char names[] = "KobeBryant";
int iValue[] = { , , , , , , , , , , , , , }; /* 新建一个bin文件 */
FILE *fw = fopen("1.bin", "wb");
if (fw == NULL)
return ; /* 写入imgname,并加上一个空格 */
for (int i = ; i < strlen(names); i++)
fwrite(names + i, sizeof(char), , fw);
char space = ;
fwrite(&space, sizeof(char), , fw); /* 将数值写入到bin文件中 */
int length = sizeof(iValue) / sizeof(int);
for (int i = ; i < length; i++)
{
fwrite(iValue+i, sizeof(int), , fw);
} fclose(fw);
return ;
}
写入的结果:
读入bin文件的代码:
#define _CRT_SECURE_NO_WARNINGS
#include <iostream> using namespace std; int main(int argc, char *argv[])
{
/* 创建文件指针,以只读+二进制的方式打开文件 */
FILE *fr = fopen("1.bin", "rb"); /* 判断打开文件是否成功 */
if (fr == NULL)
{
printf("Message : %s\n", strerror(errno));
return -;
}
/* 输出img的图片名称,加上一个换行符 */
char c_name;
int rc = -;
rc = fread(&c_name, , sizeof(char), fr);
while (c_name!=)
{
cout << c_name;
rc = fread(&c_name, , sizeof(char), fr);
}
printf("%c", ); /* 读入每个int型数据后,并输出 */
int data = -;
int n = ;
rc = fread(&data, sizeof(int), , fr);
while (rc)
{
n += rc;
printf("%-5d", data);
rc = fread(&data, sizeof(int), , fr);
} /* 关闭文件 */
fclose(fr);
system("pause");
return ;
}
读该bin文件的结果:
rc = fread(&c_name, 1, sizeof(char), fr)函数,每次读入一个字符,返回值为读入成功的字符个数,读入成功,rc=1,读入失败,rc=-1;
直到读入空格时,字符串的读入停止。
每次读入一个字符时,文件指针fr都会向后挪动一位。
c代码写数据到二进制的bin文件中的更多相关文章
- java中的文件读取和文件写出:如何从一个文件中获取内容以及如何向一个文件中写入内容
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.Fi ...
- [数据科学] 从csv, xls文件中提取数据
在python语言中,用丰富的函数库来从文件中提取数据,这篇博客讲解怎么从csv, xls文件中得到想要的数据. 点击下载数据文件http://seanlahman.com/files/databas ...
- 【VS开发】使用WinPcap编程(4)——把网络数据包存储到一个文件中
这里用到的数据结构是pcap_dumper_t,这也是一个相当于文件描述符的东西,我们在用的时候先指定pcap_dumper_t *dumpfp; 使用两个函数来存储网络数据,一个是pcap_dump ...
- 将Json数据保存在静态脚本文件中读取
一些常用的数据例如一些网站的区域信息被改变的可能性不大,一般不通过请求获取,于是我们选择存在静态文件中,例如以下Demo: 1.动态加载Json数据显示到前台 [HttpPost] public Ac ...
- python 将json格式的数据写入csv格式的文件中
# coding=utf-8 import json import csv # 重新进行配置读写数据时的默认编码 import sys reload(sys) sys.setdefaultencodi ...
- Mapreduce读取Hbase表,写数据到多个Hbase表中
Job端的变化: 通过设置conf,配置输出表,在reduce中获取输出表名字 Configuration conf = job.getConfiguration(); //输出表1 conf.set ...
- ICP编程软件配置(烧写KEIL编译后的bin文件)
1. 安装NuMicro_ICP_Programming_Tool_1.29.6425软件 2. 打开软件后选择目标芯片后点击“连接”按钮 3. 添加程序 4. 点击设定按钮进行设定 5. 点击开始 ...
- [数据科学] 从text, json文件中提取数据
文本文件是基本的文件类型,不管是csv, xls, json, 还是xml等等都可以按照文本文件的形式读取. #-*- coding: utf-8 -*- fpath = "data/tex ...
- 【SQL Server数据迁移】把csv文件中的数据导入SQL Server的方法
[sql] view plaincopy --1.修改系统参数 --修改高级参数 sp_configure 'show advanced options',1 go --允许即席分布式查询 sp_co ...
随机推荐
- Java基础(进制转换-)
进制概述: 进制也就是进位计数制,是人为定义的带进位的计数方法(有不带进位的计数方法,比如原始的结绳计数法,唱票时常用的“正”字计数法,以及类似的tally mark计数). 对于任何一种进制---X ...
- Python语言——基础01-环境安装、注释、变量
开篇导言: 今天开始进行python学习的笔记更新,以后我都用截图的方式更新,方便不麻烦,界面美观,今天学习更新的python学习内容是环境安装.注释.变量的内容 关注我博客的童鞋从现在开始也可以跟着 ...
- C++ cout格式化输出
表1:C++ 流操纵算子 流操纵算子 作 用 *dec 以十进制形式输出整数 常用 hex 以十六进制形式输出整数 oct 以八进制形式输出整数 fixed 以普通小数形式输出浮点数 scienti ...
- 论文阅读(Weilin Huang——【ECCV2016】Detecting Text in Natural Image with Connectionist Text Proposal Network)
Weilin Huang——[ECCV2016]Detecting Text in Natural Image with Connectionist Text Proposal Network 目录 ...
- 【转】jenkins+gitlab配置遇到问题
搭建jenkins+gitlab拉取代码失败,日志如下: ERROR: Error fetching remote repo 'origin'hudson.plugins.git.GitExcepti ...
- (简单)华为M3揽月 BTV-W09的Usb调试模式在哪里开启的经验
每次我们使用pc链上安卓手机的时候,如果手机没有开启Usb调试模式,pc则没办法成功识别我们的手机,有时候,我们使用的一些功能较好的app如以前我们使用的一个app引号精灵,老版本就需要开启Usb调试 ...
- linux单项目发布流程
1.安装python #1.安装python3.7所需要的依赖包yum -y groupinstall "Development tools"yum -y install zlib ...
- react小知识点
1.render函数什么时候会执行? 当this.state/this.props发生改变的时候render函数就会执行 2.组件第一次执行的时候会执行哪些生命周期 constructor--> ...
- Jenkins 配置git
点击"新建任务"创建一个自用风格的项目 点击"源码管理",选择 git 系统管理 --> Global Tool Configuration<为访问 ...
- Yii1操作phpexcel
Yii::import('application.vendors.phpexcel.*'); Yii::import('application.vendors.phpexcel.PHPExcel.*' ...