C++读取TXT文档中最后一行中的数字并将其作为新的值加入后边新的运算

需要代码可以读取文本最后一行的数字,并将其加入到接来去的运算中去,有没有大神帮帮我

#include <iostream>
#include <vector>
#include <string>
#include <sstream>
#include <fstream>
using namespace std;

// 文本文件中的一行记录 
class Element
{
public:
    Element() : count(0) {}
    
    string id;         // ID 
    string name;   // 名称 
    long count;     // 数量 
};

int main()
{
    // 打开输入文件 
    ifstream infile("in.txt", ios::in);
    if(!infile)
    {
        // 打开文件错误 
        cerr << "Open File in.txt ERROR!" << endl;
        return 1;
    }
    
    vector<Element> data;        // 输入文本文件中的所有数据 
    
    // 读文件 
    string line;
    while(getline(infile, line)) // 读取一行记录 
    {
        Element e;
        stringstream ss;
        unsigned int from = 0, to = 0;
        
        // 截取 id 
        to = line.find(" ", from);
        e.id = line.substr(from, to - from);
        from = ++to;
        
        // 截取 name 
        to = line.find(" ", from);
        e.name = line.substr(from, to - from);
        from = ++to;
        
        // 截取 count 
        ss << line.substr(from);
        ss >> e.count;
        
        data.push_back(e);
    }
    infile.close();
    
    // 统计用户输入 
    while(true)
    {
        cout << "请输入编号,输入-1表示结束: ";
        string input;
        cin >> input;
        if(input == "-1")
        {
            // 结束 
            break;
        }
        
        // 查找对应的记录 
        int index;
        for(index = 0; index < data.size(); ++index)
        {
            if(input == data[index].id)
            {
                break;
            }
        }
        if(index == data.size())
        {
            // 未找到对应记录 
            cerr << "对不起,无此编号..." << endl;
            continue;
        }
        
        // 更新数量 
        ++data[index].count;
    }
    
    // 打开输出文件 
    ofstream outfile("out.txt", ios::out);
    if(!outfile)
    {
        // 打开文件错误
        cerr << "Open File out.txt ERROR!" << endl;
        return 1;
    }
    
    // 写文件 
    for(int i = 0; i < data.size(); ++i)
    {
        outfile << data[i].id << ' ' << data[i].name << ' ' << data[i].count << endl;
    }
    outfile.close();
    
    system("pause");
    return 0;
}

追问

只是要读取文档最后一行的数字,然后把它作为后边运算的数据而已。

温馨提示:内容为网友见解,仅供参考
无其他回答

...成若干个txt文本并以每一行的前4个字符作为新txt的文件名。_百度知...
readline读取行,切片[:4]读取命名,读文件用w模式新建

C++ 输入一行字符串,内有数字和非数字字符,将其中连续的数字作为一个...
int chompnum(char* str, char** to){ int dig = 0; int num = 0; while (*str) { if (*str >= '0' && *str <= '9') { dig++; } else if (dig) { to[num] = (char*) malloc(dig + 1); memcpy(to[num], str-dig, dig); to[...

程序设计中的指令是什么?有哪几种?
Java去掉了以下几个C和C++功能: 指针运算 结构 typedefs #define 需要释放内存 这将减少了平常出错的50%。而且,Java很小,整个解释器只需215K的RAM。 面象对象:Java实现了C++的基本面象对象技术并有一些增强,(为了语言简单,删除了一些功能)。Java处理数据方式和用对象接口处理对象数据方式一样。 五. Jav...

DOS 中的符号是什么意思 比如% $都是做什么的?急求答案谢谢高手_百度...
copy 路径\\文件名1 路径\\文件名2 \/y 复制文件1到指定的目录为文件2,用参数\/y就同时取消确认你要改写一份现存目录文件 copy c:\\srv.exe \\\\ip\\admin$ 复制本地c:\\srv.exe到对方的admin下 cppy 1st.jpg\/b+2st.txt\/a 3st.jpg 将2st.txt的内容藏身到1st.jpg中生成3st.jpg新的文件,注:2st.txt文...

求一点PHP对TXT文件和文章的操作教程
求一点PHP对TXT文件和文章的操作教程 50 例如PHP如何存储,读取,创建,删除和修改TXT文件.PHP如何对文章做修改.例如:abc如何指定读哪一行的数据或者是a,b,c如何用,做为分界点分开读取各个数据?又或者是如何查找文章中的一段进行... 例如PHP如何存储,读取,创建,删除和修改TXT文件.PHP如何对文章做修改.例如:abc...

...批量文件搜索字符串或者记录 2如何将新记录写入文件的最后一行...
1.如果是搜索文件,可以用列举文件控件(在文件IO下),得到数组,你可以索引那个数组。如果是要搜索文件里的内容,那就需要依次打开每个文件,读取内容,然后用正则表达式去匹配你要搜索的文本内容。2.打开文件然后写入,有两种方式:一是传入文件路径到“写文件”控件去打开,这样,写文件就是覆盖写 二...

常用的电脑操作小技巧
1、在微软小娜搜索栏中输入【regedit】后,按回车键进入注册表编辑器2、找到以下路径:HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced3、在【advanced】文件中【新建】-【字符串值】,命名文件为【DisabledHotkeys】,如图:4、在【DisabledHotkeys】中输入数据值(注:如果想要禁止...

电脑硬盘中的文件什么解码电脑中许多文件出现了乱码怎么回事
①可以用WinZip+IE来解码,请你把乱码邮件的内容,拷贝到剪贴板中,然后将其粘贴到记事本中,存为文本文件(例如YJ.txt),再将其后缀改为.uue(改为YJ.uue),点击此文件,会启动WinZip,然后启动IE,把WinZip中的001.txt 文件拖到IE窗口中,就会显示邮件原来的内容,而不会看到乱码。

...将其加密后输出。方法是将该数每一位的数字加9,然后除以10取余作为...
1234 2103 Press any key to continue \/ include<iostream.h>int main() {int digit1, digit2, digit3, digit4,newnum,number;cin >> number;digit1 = (number % 10 + 9) % 10; number \/= 10;digit4 = (number % 10 + 9) % 10; number \/= 10;digit3 = (number % 10 + 9...

数学中的“迭代法”是什么啊?有什么用?
在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。 二、建立迭代关系式。所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系)。迭代关系式的建立是解决迭代问题的关键,通常可以使用递推或倒推的方法来完成。 三、对迭代过程进行控制。

相似回答