std::ifstream inputFile("input.txt"); if (!inputFile) { std::cout << "无法打开输入文件" << std::endl; return 1; } std::vector<Set> sets; std::vector<std::string> setNames; std::string line; while (std::getline(inputFile, line)) { if (!line.empty()) { std::istringstream iss(line); std::string setName; char openingBrace; std::string vo; std::vector<std::string> elements; // 读取集合名称 iss >> setName; // 读取开括号 if (iss >> openingBrace && openingBrace == '{') { std::string element; while (iss >> element && element != "}") { if (element != ",") { elements.push_back(element); } }当我输入A={1,5,8,2,9,a,b,c}时候,setname就已经把“A={1,5,8,2,9,a,b,c}”读取完了,我该怎么修改,才能让setname只读取“A”,即字符串的第一个字符
时间: 2024-02-14 08:27:22 浏览: 81
C++_中关于文件的读入和输出
你可以使用字符串的substr函数来截取字符串的一部分。在这种情况下,你可以修改代码如下:
```cpp
// 读取集合名称
iss >> setName;
setName = setName.substr(0, setName.find('=')); // 截取等号前面的部分
```
这样,`setName` 将只包含等号前面的部分,即字符串的第一个字符。
阅读全文