實現功能:
0、退出系統
1、添加信息
2、顯示信息
5、查找信息
7、清空信息
刪除修改排序沒做,原理類似,讀取初始文件作出修改,寫入新的文件,貌似不能在txt文檔直接做操作
#include <iostream>
#include <string>
#include <fstream>
#include <windows.h>
using namespace std;
int main()
{
while (true) {
//初始界面
cout << "**************************************\n";
cout << "*************職工管理系統*************\n";
cout << "*********** 0、退出管理系統***********\n";
cout << "*********** 1、增加職工信息***&*******\n";
cout << "*********** 2、顯示職工信息***********\n";
cout << "*********** 3、刪除離職員工***********\n";
cout << "*********** 4、修改職工信息***********\n";
cout << "*********** 5、查找職工信息***********\n";
cout << "*********** 6、按照編號排序***********\n";
cout << "*********** 7、清空所有文檔***********\n";
cout << "**************************************\n\n";
//輸入操作編號
cout << "請輸入編號選擇操作:\n";
int choice;
cin >> choice;
if (choice == 0) {
exit(0);
}
else if (choice == 1) {
cout << "請輸入職工編號:\n";
string work_num;
cin >> work_num;
cout << "請輸入職工姓名:\n";
string work_name;
cin >> work_name;
cout << "請選擇職工職位:\n0、經理\n1、組長\n2、普通員工\n";
string work_degree;
cin >> work_degree;
if (work_degree == "0") {
work_degree = "經理";
}
else if (work_degree == "1")
{
work_degree = "組長";
}
else
{
work_degree = "普通員工";
}
/*string file_name = "D:\manager.txt";
ofstream file_writer(file_name, ios_base::out);
file_writer << work_num << " " << work_name << " " << work_degree << "\n";
file_writer.close();*/
ofstream file;
if (file.bad())
{
cout << "cannot open file" << endl;;
}
file.open("D:\manager.txt", ios::app);
file << work_num << " " << work_name << " " << work_degree << "1" << "\n";
}
else if (choice == 2) {
string file_name = "D:\manager.txt";
ifstream file_reader(file_name);
if (file_reader.is_open())
{
cout << "職工信息如下:\n";
while (file_reader.peek() != EOF)
{
string line;
getline(file_reader, line, '\n');
if (line.substr(line.size() - 1), 1) {
cout << line.substr(0, line.size() - 1) << "\n";
}
// do something
}
file_reader.close();
}
else
{
std::cerr << "Fail to open file !" << std::endl;
}
getchar();
getchar();
}
else if (choice == 3) {
string file_name = "D:\manager.txt";
ofstream file_writer(file_name, ios_base::out);
}
else if (choice == 4) {
}
else if (choice == 5) {
cout << "輸入職工編號:\n";
string work_num;
cin >> work_num;
string file_name = "D:\manager.txt";
ifstream file_reader(file_name);
if (file_reader.is_open())
{
while (file_reader.peek() != EOF)
{
string line;
getline(file_reader, line, '\n');
string num;
int i = 0;
for (; i < line.size(); i++) {
if (line[i] == ' ') {
break;
}
}
num = line.substr(0, i);
if (num == work_num) {
cout << "職工信息如下:\n";
cout << line.substr(0, line.size() - 1) << "\n";
break;
}
// do something
}
file_reader.close();
}
else
{
std::cerr << "Fail to open file !" << std::endl;
}
getchar();
getchar();
}
else if (choice == 6) {
}
else if (choice == 7) {
string file_name = "D:\manager.txt";
ofstream file_writer(file_name, ios_base::out);
}
}
}