Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;使用getline逐行读取文件_C++_Stream - Fatal编程技术网

C++ C++;使用getline逐行读取文件

C++ C++;使用getline逐行读取文件,c++,stream,C++,Stream,我想逐行读一个文件 void BookRepository::PopulateEntity(Book * book, std::ifstream * inputfileStream) { getline(inputfileStream, book->Id); getline(inputfileStream,book->Name); } 像这样的。。。但我得到一些编译错误,我不知道为什么 错误C2784'std::basic_istream &std:

我想逐行读一个文件

    void BookRepository::PopulateEntity(Book * book, std::ifstream * inputfileStream)
    {
        getline(inputfileStream, book->Id);
getline(inputfileStream,book->Name);
}
像这样的。。。但我得到一些编译错误,我不知道为什么

错误C2784'std::basic_istream &std::getline(std::basic_istream) &,std::basic_string&'):无法推断 来自的“std::basic_istream&”的模板参数 'std::ifstream'

错误C2784'std::basic_istream &std::getline(std::basic_istream) &&,std::basic_string&'):无法推断 来自的“std::basic_istream&&”的模板参数 'std::ifstream


请检查表格的格式。它将数据放入
std::string
中。所以你的
book->Id
book->Name
应该是
std::string

getline(*inputfileStream, book->Id); // if book->Id is string
getline(*inputfileStream, book->Name);
或者,您可以读入临时字符串,然后将其转换为首选数据类型

string temp;
getline(*inputfileStream, temp);
book->Id = stoi(temp);
getline(*inputfileStream, book->Name);

您的代码中可能有错误。首先,
inputfileStream
是一个指针,
getline
需要一个对象。因此,将调用更改为
std::getline(*inputfileStream,book->Id)。但这只是一个猜测;如果没有真正的代码,就不可能做出明智的反应。告诉我们你会遇到什么类型的错误。@abdullahedited@PeteBecker错误来自这行代码。。不管怎么说,我还是很高兴them@PeteBecker哦,这似乎是可行的,但只适用于字符串。。。