所以我试图从文件中读取一系列字符串,用制表符分隔,然后将它们存储到结构中。我遇到的问题是这些字符串中的两个包含空格,其中一个是完整的句子。因此通常(文件>>)操作将不起作用。我知道如何做到这一点,但它完全没有效率。我有什么想法可以做到这一点?
样本数据:书名。书面或空白的页面集合。
这是我想要的输出: 书名。书面或空白的页面集合。
这是我得到的输出: 书名。甲
到目前为止,这是我的代码:
void readFile(string filename)
{
Node::Word fw;
try
{
std::ifstream file(filename, std::ios::in);
if (file.fail())
{
throw std::runtime_error("Error reading files!");
}
string word, description, pos;
while (file >> word >> pos >> description)
{
fw.word = word;
fw.partofspeech = pos;
fw.meaning = description;
insertElement(fw);
}
file.close();
}
catch (std::runtime_error & e)
{
std::cerr << e.what() << std::endl;
}
}