引言:今天学会了getline的用法,顺手编写一个逐行读取txt文件的程序。关于getline的用法可以看我之前的博客:2.C++标准库函数:getline函数 定界流输入截取函数 -zobol的windows编程教程

个人技术博客(文章整理+源码): https://zobolblog.github.io/LearnWinAPI/

最终效果:

1.getline函数声明

getline函数实际上是在两个模块都有实现,一个是string一个是istream,它们的用处都是一样的,只是输入的参数不太一样。一个是char*一个是string。

std::istream::getline:

istream& getline (char* s, streamsize n );

istream& getline (char* s, streamsize n, char delim );

std::getline (string):

istream& getline (istream& is, string& str);

istream& getline (istream& is, string& str, char delim);

2.使用方法:

第一个std::istream::getline的使用,就是cin或者ifstream,调用成员函数的形式,cin.getline:

第1个参数s是承接的字符数组,大小必须大于等于获得的数据长度。

第2个参数n,是s的最大长度,因为char*是得不到数组长度的,必须额外给出,防止内存访问越界、

char name[256];

std::cin.getline(name, 256);

第二个std::getline (string),类似公共函数了,流的输入也放到了参数列表中,因为string内部有动态长度设计,就不用额外给出了。

std::getline (std::cin,name);

char delim就是定界符号,默认是‘/n’换行符,也可以自己指定。getline会返回从起始,到定界符前的数据(不包括定界符本身,但流会经过定界符,相当于光标跳到定界符后面)。

C++逐行读取txt文件源码:

#include <string>

#include <fstream>

#include <vector>

int main() {

  std::ifstream infile("zobol.txt");

  std::string line;

  std::vector<std::string> vectorLines;

while (getline(infile, line))

{

  vectorLines.push_back(line);

}

  return 0;

}

效果:

本人个人技术博客:https://zobolblog.github.io/LearnWinAPI/ ,个人公众号:zobol的魔法藏书室,windows编程技术讨论群:811851762。所有源码和文章均整理上传其中,欢迎关注。

3.C++逐行读取txt文件数据,利用getline -windows编程的更多相关文章

  1. 别再用"while (!feof(file))"来逐行读取txt文件了!

    起因 执行一个C/C++程序出现segment fault.它逐行读取文本文件,每一行是一个图片名字,然后读图.处理图像,etc. 发现最后一次读取的文件名不存在(空的). 正确的逐行读取txt文件 ...

  2. python 逐行读取txt文件

    逐行读取txt文件 path = r'D:\123456\1.txt'with open(path, 'r', encoding='utf-8') as f:    for line in f:   ...

  3. python3 读取txt文件数据,绘制趋势图,matplotlib模块

    python3 读取txt文件数据,绘制趋势图 test1.txt内容如下: 时间/min cpu使用率/% 内存使用率/% 01/12-17:06 0.01 7.61 01/12-17:07 0.0 ...

  4. php逐行读取txt文件写入数组的方法

    使用说明: 采用fopen 方法,逐行读取数据,并使用feof($fp)  判断是否文件截止,最后通过filter() 方法,去除空白行,得到所需数据 $file = fopen("user ...

  5. Yii读取TXT文件数据插入到数据库

    个人平时会用到的方法,记录一下并分享给需要的朋友,Yii批量添加还需要clone一下model才可以,不然只会插入一条数据. 也可以把文件通过参数的方式调入到方法中. // 读取CVS文件 funct ...

  6. php逐行读取.txt文件内容,并解析每行内容

    // 读取nlp text 并存到mongodb public function readNLP(&$errorCode,&$errorMessage) { try{ // $_SER ...

  7. JAVA逐行读取TXT文件

    package help; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; imp ...

  8. 逐行读取txt文件并存入到数组中

    get_file_contents_on_line.php $file = fopen("log.txt", "r"); $user=array(); $i=0 ...

  9. 逐行读取txt文件,分割,写入txt。。。上传,下载

    s = [] f  = open('querylist.txt','r') #由于我使用的pycharm已经设置完了路径,因此我直接写了文件名 for lines in f:     ls = lin ...

随机推荐

  1. k8s pod故障分类与排查

    一.Pod故障状态基本有几种Pod状态 处于PendingPod状态 处于WaitingPod状态 处于ContainerCreatingPod状态 ImagePullBackOffPod状态 Cra ...

  2. RFC 标准文档

    RFC 标准文档 什么是 RFC ? RFC(Request For Comments)意即"请求评论",包含了关于Internet的几乎所有重要的文字资料.如果你想成为网络方面的 ...

  3. java连接mysql8.0.28数据库实例

    首先说明,由于是8版本的数据库,所以配置类的写法上与5版本的有所区别,需要注意,同时用idea或eclipse时需要导入jar包,jar包的下载链接: https://dev.mysql.com/ge ...

  4. Codeforces Round #700 (Div. 2) --- B(思维)

    传送门 有必要提醒自己一下, 先把题读利索了(手动捂脸) 题目 B. The Great Hero   The great hero guards the country where Homer li ...

  5. what 的页面制作

    1. html结构 <!-- section: what we do --> <section id="what" class="bg-light py ...

  6. mmdetection获取最高map的epoch

    自动从训练结果中获取最高的mAP所对应的epoch. <code>import json import os ''' :param work_dir 训练结果目录 :return 最好的m ...

  7. 教你轻松解决CSRF跨站请求伪造攻击

    摘要:CSRF(Cross-site request forgery)跨站请求伪造,通过伪装来自受信任用户的请求来利用受信任的网站.与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的资源也 ...

  8. js数组操作集合

    1. join() 功能:将数组中所有元素都转化为字符串并连接在一起. 2. reverse() 功能:将数组中的元素颠倒顺序. 3. concat() 功能:数组拼接的功能 ,返回新数组,原数组不受 ...

  9. 如何在Web前端实现CAD图文字全文搜索功能之技术分享

    现状 在CAD看图过程中我们经常会需要用到查找文字的功能,在AutoCAD软件查找一个文字时,可以通过打开左下角输入命令find,输入查找的文字,然后设置查找范围,就可以搜索到需要查询的文字.但在We ...

  10. XCTF练习题---MISC---can_has_stdio?

    XCTF练习题---MISC---can_has_stdio? flag:flag{esolangs_for_fun_and_profit} 解题步骤: 1.观察题目,下载附件 2.打开发现是由tra ...