我遇到以下任务的问题。我需要将其他程序的输出txt数据加载到我的程序中并搜索以下字符串:
“zhi”:97.92716217041016,
特别是数值(97.92 ......)。 “,”符号是其他导出值之间的分隔符。
我试图按照以下方式处理c ++ builder中的内容:
1.读取文件
2.将线加载为字符串
3.找到zhi的位置
4.将6添加到位置 - 这将指向数字
5.删除新指针之前的所有内容
6.删除15 char后的所有内容
我知道必须有一些更简单的方法,但我是初学c ++。
有人可以指导我用什么功能来查找“zhi”之间的数字:和?
答案 0 :(得分:0)
使用std::getline
将文件读取为std::string
类型
使用string::find
获取"zhi":
之后的文字位置
使用string::find
获取','的位置
使用string::substr
获取两个位置之间的字符串副本。
请记住,修改中间的文件很困难,特别是如果您必须删除或插入更多字符。
传统的文件修改方法是:
1.将原始文件中所有未更改的内容复制到新文件中
2.将更改的文本写入新文件
3.将剩余的未更改文本写入新文件
4.关闭所有文件。