C++ 读取文本数据里的字符串和数字
时间: 2024-03-15 15:46:16 浏览: 65
要读取文本数据里的字符串和数字,可以使用C++的文件输入流对象 `ifstream` 和相关的读取操作符。以下是一个简单的示例代码,假设文本数据里的数据格式为每行一个字符串和一个数字,用逗号隔开。
```c++
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
using namespace std;
int main() {
ifstream infile("data.txt"); // 打开文件
string line;
while (getline(infile, line)) { // 循环读取每一行的数据
stringstream ss(line); // 把每一行数据转为stringstream
string str;
int num;
getline(ss, str, ','); // 从stringstream里读取字符串,以逗号为分隔符
ss >> num; // 从stringstream里读取数字
cout << str << " " << num << endl; // 输出读取的数据
}
infile.close(); // 关闭文件
return 0;
}
```
在上面的示例代码中,我们首先打开文件,然后使用 `while` 循环读取每一行的数据。对于每一行的数据,我们把它转为 `stringstream` 对象,再使用 `getline` 函数从 `stringstream` 里读取字符串,以逗号为分隔符。注意,这里我们使用了第三个参数来指定分隔符。接着,我们使用 `>>` 操作符从 `stringstream` 里读取数字。最后,记得关闭文件以释放资源。
阅读全文