C++ – 最简单的将文本文件的内容一次性读取到std::string的方法
本文作者:StubbornHuang
版权声明:本文为站长原创文章,如果转载请注明原文链接!
原文标题:C++ – 最简单的将文本文件的内容一次性读取到std::string的方法
原文链接:https://www.stubbornhuang.com/902/
发布于:2020年08月21日 23:00:14
修改于:2022年01月12日 17:34:30

1 C++将文本文件一次性读取到std::string的方法
包含头文件:
#include <fstream>
#include <iostream>
读取代码如下:
std::ifstream in("test.txt", std::ios::in);
std::istreambuf_iterator<char> beg(in), end;
std::string strdata(beg, end);
in.close();
strdata即为存储该文本文件所有内容的string。
该方法只有四行代码即可完成文本文件的读取,不需要再一行一行的读了!
2 使用文件流的方式
#include <iostream>
#include <fstream>
std::string ReadFileToString(const std::string& file_path)
{
int fileLength = 0;
std::ifstream inFile(file_path, std::ios::binary);
if (!inFile.is_open())
{
inFile.close();
}
// 跳到文件尾
inFile.seekg(0, std::ios::end);
// 获取字节长度
fileLength = inFile.tellg();
// 跳到文件开头
inFile.seekg(0, std::ios::beg);
char* buffer = new char[fileLength];
// 读取文件
inFile.read(buffer, fileLength);
std::string result_str(buffer, fileLength);
delete[] buffer;
inFile.close();
return result_str;
}
int main()
{
std::cout << "读取的文件内容为:" << ReadFileToString("helloworld.txt") << std::endl;
return 0;
}
当前分类随机文章推荐
- C++ - 控制台程序在控制台窗口可变参数格式化带颜色输出日志信息 阅读2249次,点赞0次
- C++ - 我的代码风格备忘 阅读124次,点赞0次
- C++11/std::condition_variable - 生产者消费者模型 阅读2123次,点赞0次
- C++ - queue存储动态指针时正确释放内存 阅读3924次,点赞2次
- C++ - 字节数组byte[]或者unsigned char[]与long的相互转换 阅读292次,点赞0次
- C++ - GBK编码下的全角字符转半角字符 阅读788次,点赞0次
- C++ - vector存储动态指针时正确释放内存 阅读4213次,点赞0次
- C++ - 使用模板和智能指针构建一个双向链表工具类 阅读70次,点赞0次
- GCC/GG++中编译优化选项-O -O0 -O1 -O2 -O3 -Os -Ofast -Og -Oz各自的区别和作用 阅读396次,点赞0次
- C++ - 在两个互有依赖关系的类中使用std::shared_ptr和std::weak_ptr进行内存管理 阅读71次,点赞0次
全站随机文章推荐
- 资源分享 - VR Developer Gems 英文高清PDF下载 阅读757次,点赞1次
- 资源分享 - 动手学深度学习(李沐 2020年05月08日)PDF下载 阅读1513次,点赞0次
- C++ - queue存储动态指针时正确释放内存 阅读3924次,点赞2次
- 资源分享 - Game Programming Gems 4 英文高清PDF下载 阅读1498次,点赞1次
- C++ - 得到字符串中某个字符串出现的个数 阅读2544次,点赞1次
- 资源分享 - 深度学习入门之Pytorch(廖星宇著)PDF下载 阅读2100次,点赞0次
- Python3 - 正则表达式去除字符串中的特殊符号 阅读11663次,点赞1次
- Windows - 使用类的成员函数作为Win32窗口消息回调处理函数WindowProc 阅读212次,点赞0次
- 资源分享 - Simulating Humans - Computer Graphics Animation and Control 英文高清PDF下载 阅读521次,点赞0次
- 深度学习 - CNN中卷积层、池化层、全连接层的输出参数大小的计算 阅读89次,点赞1次
评论
149