如何读取包含字符串和数字的文本文件并存储到数组结构?

时间:2015-11-22 04:01:40

标签: c++ struct fstream c-strings

我创建了一个包含字符串和数字的文本文件。所以我想创建一个读取这些数据的程序,但是我一直在提取这些数据并将它们存储到一个结构数组中。我不知道它为什么不起作用......任何人都可以帮忙吗?

非常感谢

这是我的计划:

#include <iostream>
#include <fstream>
using namespace std;

int SIZE = 10;

struct MenuItem
{
    string name;
    float price;
};

float ReadItem( ifstream &in, MenuItem &d )
{
    getline( in, d.name );
    in >> d.price;
    in.ignore();

    return 0;
}

void PrintItem( ostream &out, MenuItem d )
{
    out << "Item name: " << d.name
        << " Price: " << d.price << endl;
    return;
}

int main()
{
    ifstream fin( "text.txt" );
    int i = 0, j;
    MenuItem data[SIZE];

    while( !fin.eof() )
    {
        ReadItem( fin, data[i] );
        i++;
    }

    fin.close();

    for( j = 0; j < i; j++ )
    {
        PrintItem( cout, data[j] );
    }
    return 0;
}

0 个答案:

没有答案