C++通过Read函数读取文件
通过read函数将文件中的数据按照一定的长度读取出来并且存放在新的数组中。
函数原型istream& read (char* s, streamsize n); //用来暂存内容的数组(必须是char*型),以及流的长度
比如我们要读取txt文件中的内容
ifstream in("TEST.txt");
先通过文件流将流与txt文件绑定,然后获取文件长度
in.seekg(0, in.end); //追溯到流的尾部
int length = in.tellg(); //获取流的长度
in.seekg(0, in.beg); //回到流的头部
然后读取文件
char* temp = new char[length]; //用来暂存内容的数组if (in.is_open()) {cout << "Now reading..." << endl; in.read(temp, length); //read函数}
将流中的内容读取到容器中
template<typename T>
std::vector<T> ReadArray(std::ifstream &in, int size) //size标识vector的大小
{std::vector<T> v(size, 0);in.read((char*)(&v[0]), sizeof(T)*size); return v;
}
这里注意,读取时必须标识读入的位置,一般从第一个位置开始读入,即vec[0] 或者string[0]
in.seekg(0, in.beg); //回溯到流头部vector<char> textVec;textVec = ReadArray<char>(in, length); //读取成功in.close(); //不要忘了关闭流
程序整体如下
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;template<typename T>
std::vector<T> ReadArray(std::ifstream &in, int size) //size标识vector的大小
{std::vector<T> v(size, 0);in.read((char*)(&v[0]), sizeof(T)*size);return v;
}int main() {ifstream in("TEST.txt");//获取文件的大小in.seekg(0, in.end);int length = in.tellg();in.seekg(0, in.beg);char* temp = new char[length];if (in.is_open()) {cout << "Now reading..." << endl;in.read(temp, length);}for (int i = 0; i < length; ++i){cout << temp[i] <<" ";}cout << endl;in.seekg(0, in.beg);vector<char> textVec;textVec = ReadArray<char>(in, length);cout << textVec[1] << endl;in.close();system("PAUSE");}
C++通过Read函数读取文件相关推荐
- pandas将列表list插入到dataframe的单元格中、pandas使用read_csv函数读取文件并设置保留数值的前置0( leading zeroes)
pandas将列表list插入到dataframe的单元格中.pandas使用read_csv函数读取文件并设置保留数值的前置0( leading zeroes) 目录
- pandas使用read_csv函数读取文件并解析日期数据列(parse dates)、pandas使用read_csv函数读取文件并将缺失值转化为空字符串
pandas使用read_csv函数读取文件并解析日期数据列(parse dates).pandas使用read_csv函数读取文件并将缺失值转化为空字符串 目录
- pandas使用read_csv函数读取文件时指定数据列的数据类型、pandas使用read_csv函数读取文件时通过keep_default_na参数设置缺失值替换为空字符串
pandas使用read_csv函数读取文件时指定数据列的数据类型.pandas使用read_csv函数读取文件时通过keep_default_na参数设置缺失值替换为空字符串 目录
- pandas使用read_csv函数读取文件最后N行数据并保留表头、pandas使用read_csv函数读取网络url链接数据
pandas使用read_csv函数读取文件最后N行数据并保留表头.pandas使用read_csv函数读取网络url链接数据 目录
- R语言scan函数读取文件为向量或者列表格式实战
R语言scan函数读取文件为向量或者列表格式实战 目录 R语言scan函数读取文件为向量或者列表格式实战 #基本语法
- pandas使用read_csv函数读取文件的前N行数据并保留表头、pandas使用read_csv函数读取制表符分割的文件(tab-delimited)、自定义设置sep参数
pandas使用read_csv函数读取文件的前N行数据并保留表头.pandas使用read_csv函数读取制表符分割的文件(tab-delimited).自定义设置sep参数 目录
- glob.glob 函数读取文件
glob.glob(pathname) 返回所有匹配的文件路径列表.它只有一个参数 pathname,定义了文件路径匹配规则,这里可以是绝对路径,也可以是相对路径. 如当前路径下有文件如下: * 返回 ...
- 在系统中使用read函数读取文件内容
read函数(读取文件) read函数可以读取文件.读取文件指从某一个已打开地文件中,读取一定数量地字符,然后将这些读取的字符放入某一个预存的缓冲区内,供以后使用. 使用格式如下: number = ...
- php文件读取文件内容,PHP文件系统函数-读取文件内容几种方式
介绍几种php获取文件内容的方式 介绍读取文件的方式之前,我们先看一下打开文件资源和关闭资源 名字资源绑定到一个流 - fopen 关闭一个已打开的文件指针 - fclose $handle1 = f ...
最新文章
- 解决电脑重启后 ubuntu 不能联网
- ICS汇编学习笔记——操作数寻址方式
- 【数据结构总结】第五章 树和二叉树(非线性结构)
- 可能是全网首个前端源码共读活动,诚邀加入学习
- rmi远程代码执行漏洞_WebSphere 远程代码执行漏洞浅析(CVE20204450)
- 任务不再等待!玩转DataWorks资源组
- 数据库某个字段增加或减少数量
- 《C#线程参考手册》读书笔记(三):.NET中的线程池
- iPhone未来怎么走?将融入脸部以及指纹辨识系统
- 剑指 Offer II 024. 反转链表
- 图论及其应用(吴望明中文版)
- 微信模拟地理位置_微信伪装地理位置是什么个原理
- windows server2019共享选项中网络发现无法启用
- c语言中罗马字母数字,C语言程序经典示例—-(22)阿拉伯数字转换为罗马数字...
- 聪明的猴子 黑暗爆炸 - 2429
- 小程序生成自带参数的小程序码
- CCNP-Spanning-Tree
- Ar大屏幕互动,面向非专业领域的体验
- caffe 人脸关键点检测_密集人脸关键点检测
- 数据结构实验---最短路径C实现附带及简单界面