C++ 字符串流跳过字符

C++ stringstreams skipping a character

本文关键字:字符 字符串 C++      更新时间:2023-10-16

我有一个文件,第一行写着">文件名.txt"。我的目标是阅读这一行,并将"文件名.txt"保存到一个名为 name 的变量中。所以我有:

ifstream file;
/* File opening stuff */
string line, name;
getline(file,line);
stringstream converter(line);
converter >> name;

这将">文件名.txt"保存到变量name,但我需要删除">"字符。我不确定在这一点之后我是否应该这样做,或者是否有办法使用 stringstream 完全跳过它。

您可以使用流轻松跳过它:

char ch;
converter >> ch; // skip initial >
converter >> name; // now read the name
您可以使用

函数跳过它 ignore ,在只需要一行之后添加 follow 语句stringstream converter(line);

converter.ignore(line.length(), '>');