C++ 读取文本数据里的字符串和数字
时间: 2024-03-15 14:44:22 浏览: 13
C++ 读取文本数据里的字符串和数字可以使用标准库中的fstream头文件和sstream头文件:
```c++
#include <iostream>
#include <fstream>
#include <sstream>
#include <vector>
#include <string>
int main() {
std::ifstream inFile("data.txt");
if (!inFile.is_open()) {
std::cerr << "Failed to open file!" << std::endl;
return -1;
}
std::vector<std::string> strData;
std::vector<int> intData;
std::string line;
while (std::getline(inFile, line)) {
std::istringstream ss(line);
std::string str;
int num;
while (ss >> str >> num) {
strData.push_back(str);
intData.push_back(num);
}
}
inFile.close();
// Do something with strData and intData...
return 0;
}
```
这里假设文本文件中每一行包含一个字符串和一个整数,使用istringstream类从每一行中读取数据,并使用>>操作符将读取到的数据存储到相应的string和int类型变量中。然后将它们加入到vector中。需要注意的是,>>操作符可以自动忽略空格和换行符等空白字符。如果需要处理更复杂的数据类型,可以使用类似的方法进行读取和转换。