代码小工具,c++,读文件工具,按照行读文件,将文件中内容读到内存中存放到map<int, string>容器中

本文介绍了一个C++代码工具,用于按行读取文件内容并存储到map中。适用于需要从文件读取大量数据并格式化输出的场景,如txt到xml转换。注意文件格式要求,确保最后一行后有回车符,否则可能导致内存错误。文章提供了读取函数的使用方法和注意事项。" 84635283,8236652,Vue方法封装与axios异步数据获取实践,"['Vue', '前端开发', 'axios', 'JavaScript', '异步处理']
摘要由CSDN通过智能技术生成

代码小工具,c++,读文件工具,按照行读文件,将文件中内容读到内存中存放到map<int, string>容器中

一、使用场景:
0、从某个文件中读取非常多的数据,并需要写入到另一个有格式要求的文件中,使用这个函数工具可以很方便的从文件中读出数据,然后可以按照自己想要的格式输出到客户端终端上,实现“格式化数据的自动生成”,然后将生成好的数据复制粘贴到目标文件。

例如:
1、将txt文件中的大量数据适配到xml文件中。
2、将Excel表格中的大量数据适配到xml或其他文件中。

二、使用注意:
1、源文件中的内容需要复制粘贴到txt文本文件中,因为txt文件的格式是最简单的,并且几乎可以从任何文本文件中复制数据,并自动去除了其他文件中花里胡哨的编码格式,这个过程起到了“清楚格式,保留数据”的作用。
2、提供的数据转移到txt文件中以后,注意确保文件的最后一行的最后一个字符后面加一个回车,使得每一行的内容都保持以回车符结束的格式。
就是保证每个被读取的文本文件,必须是光标在最后一行内容的下一行的首位,否则运行出现内存错误,程序卡死,例子如图:

正确的文件结尾:
在这里插入图片描述

会引发读取奔溃的文件结尾:
在这里插入图片描述

三、按行读取文件工具的使用手册:
0、目标文件需要提供路径

在这里插入图片描述
一定注意光标在最后一行内容的下一行。

1、读文件函数接口为void ReadFile(string& filename, map<int, string>& datamap),入参为文件路径和用来承载数据的容器
在这里插入图片描述

2、使用map<int, string>容器方便使用索引统一管理
3、不使用vector或者string的原因是避免文件中内容过多导致容器自动扩容
4、读取好的文件内容会被存储在map<int, string>容器中,从第一行开始到最后一行,每一行会分配一个索引值,索引从0开始,0-第一行,n-1对应第n行。

在这里插入图片描述

5、这个工具的作用止于将数据从文件读取到内存,正常作用是传入一个空map<int,string>数据容器,函数运行完以后该容器中存好了文件中的数据,
6、每个string的长度等于文件中对应行的字符量,注意中文占两位字符,在调试时可以看到存放中文的位置是问号,但查看string整体数据时则可以看到正常中文。

在这里插入图片描述

7、通过string自带的迭代器和下标可以对数据内容进行自定义,例如写接口进行定点修改或判定是没问题的,
8、通过与string一一对应的索引值in

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值