我想从一个文本文件中的几行存储到一个类,项目的载体,并采用向量。但是,当我从文件读入程序时,什么也不存储。试图从文本文件数据存储到对象
这里是我的主:
#include <vector>
#include <fstream>
#include <iostream>
#include "Item.h"
using namespace std;
void readFile(vector<Item>&);
int main()
{
vector<Item> items;
readFile(items);
int size = items.size();
for (int index = 0; index < size; index++)
{
cout << items[index].getName() << endl;
}
}
这是有问题的功能:
void readFile(vector<Item>& vecItems, int lines)
{
ifstream inventory;
inventory.open("inventory.txt");
string itemName;
int itemDept, itemPrice, itemQuan, itemShort, itemSurplus;
string line;
if (inventory.fail())
{
cout << "ERROR NO FILE FOUND (inventory.txt)\n";
exit(1);
}
while (inventory >> itemName >> itemDept >> itemPrice >> itemQuan >> itemShort >> itemSurplus)
{
Item temp(itemName, itemDept, itemPrice, itemQuan, itemShort, itemSurplus);
vecItems.push_back(temp);
}
inventory.close();
}
我已经打过电话
temp.setName(itemName)
etc etc
的个体,但它仍然没有持有矢量。没有在主输出和调试器说大小= 0任何帮助表示赞赏
编辑:这是文件格式
vitamins 1 15.99 1105 500 1000
shampoo 2 6.99 298 300 500
文件是如何格式化的?这可能是因为你的阅读操作不好。 – NathanOliver
我把它加入到OP中,不敢相信我忘了 – MLGSalad