如何用c++对txt文件的内容进行排序输出
时间: 2023-06-24 16:08:54 浏览: 87
可以使用C++中的STL库中的sort函数来对txt文件中的内容进行排序输出。具体步骤如下:
1. 打开txt文件并读取其中的内容,存储在vector中。
```c++
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
vector<string> content; // 用于存储txt中的内容
string line;
ifstream file("example.txt"); // 打开txt文件
if (file.is_open()) {
while (getline(file, line)) {
content.push_back(line); // 将每一行内容存储在vector中
}
file.close(); // 关闭文件
}
else {
cout << "Unable to open file." << endl;
return 0;
}
}
```
2. 使用sort函数对vector中的内容进行排序。
```c++
sort(content.begin(), content.end()); // 对vector中的内容进行排序
```
3. 将排序后的内容输出到屏幕或者另一个文件中。
```c++
for (int i = 0; i < content.size(); i++) {
cout << content[i] << endl; // 输出到屏幕
// 或者输出到文件中
// ofstream outfile("sorted.txt");
// outfile << content[i] << endl;
// outfile.close();
}
```
完整代码如下:
```c++
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
vector<string> content; // 用于存储txt中的内容
string line;
ifstream file("example.txt"); // 打开txt文件
if (file.is_open()) {
while (getline(file, line)) {
content.push_back(line); // 将每一行内容存储在vector中
}
file.close(); // 关闭文件
}
else {
cout << "Unable to open file." << endl;
return 0;
}
sort(content.begin(), content.end()); // 对vector中的内容进行排序
for (int i = 0; i < content.size(); i++) {
cout << content[i] << endl; // 输出到屏幕
// 或者输出到文件中
// ofstream outfile("sorted.txt");
// outfile << content[i] << endl;
// outfile.close();
}
return 0;
}
```