C++ 使用自定义分隔符从文件中读取文本字段
我正在处理一个我正在学习的类的问题,我们需要将文本从一个文件读入一个二维字符串表(称为“字符串表[][])。我正在读取的文本文件的格式如下: 艾因·贝达——OEB——阿尔及利亚——非洲——F——42578——61997——90560# 塞格巴纳-阿里-贝宁-非洲-1-10219-1# 斯克尔梅斯代尔####兰#英格兰#欧洲#F#42611#42104#39279## # 如您所见,每个字段由一个“#”分隔,行尾由2表示,文件结尾由3表示。我一直在寻找几种不同的方法来隔离每个字段,以便将其保存到阵列中,但到目前为止,还没有找到任何适合我的方法 我已经为此绞尽脑汁好几个小时了,如果您能给我一些建议,我将不胜感激。考虑使用,因为它允许您指定一个分隔符(在您的情况下,分隔符是C++ 使用自定义分隔符从文件中读取文本字段,c++,arrays,istream,C++,Arrays,Istream,我正在处理一个我正在学习的类的问题,我们需要将文本从一个文件读入一个二维字符串表(称为“字符串表[][])。我正在读取的文本文件的格式如下: 艾因·贝达——OEB——阿尔及利亚——非洲——F——42578——61997——90560# 塞格巴纳-阿里-贝宁-非洲-1-10219-1# 斯克尔梅斯代尔####兰#英格兰#欧洲#F#42611#42104#39279## # 如您所见,每个字段由一个“#”分隔,行尾由2表示,文件结尾由3表示。我一直在寻找几种不同的方法来隔离每个字段,以便将其保存到阵
#
)
请注意,每个字段实际上由一个空格和一个#
分隔,因此在某些情况下会有前导/尾随空格
因为这是一节课,剩下的我就让你来解决
std::ifstream file("somefile.txt");
std::string field1;
std::getline(file, field1, '#'); // Ain el Beida