C++ 数据对文件的读写函数

两个读写样例

void SaveSubLoginsIntoFile()
{
	/*for (int i = 0; i <sublogins.size(); i++)
	{
	ExtLogger.Out("[%s] Sub login '%d'", __FUNCTION__, sublogins[i]);
	}*/
	DeleteFileA(subLoginsFile.data());
	ofstream hSave(subLoginsFile.data(), ios::out | ios::app);

	int size = sublogins.size();
	if (hSave.is_open())
	{
		for (int i = 0; i < size; i++)
		{
			hSave << sublogins[i] << endl;
		}
		hSave.close();
	}
}
void ReadSubLoginsFromFile()
{
	std::ifstream in(subLoginsFile);
	std::string line;

	if (in)
	{
		while (getline(in, line))
		{
			sublogins.push_back(atoi(line.data()));
		}
	}
	in.close();
	//DeleteFileA(subLoginsFile.data());

	for (size_t i = 0; i <sublogins.size(); i++)
	{
		ExtLogger.Out("[%s] Sub login '%d'", __FUNCTION__, sublogins[i]);
	}
}
void SaveMasterSubOrdersIntoFile()
{
	/*for (size_t i = 0; i <MSorderlib.size(); i++)
	{
	ExtLogger.Out("[%s] Master order '%d'", __FUNCTION__, MSorderlib[i].front());
	}*/
	DeleteFileA(MasterSubOrdersFile.data());
	ofstream hSave(MasterSubOrdersFile.data(), ios::out | ios::app);

	int sizeMaster = MSorderlib.size();
	if (hSave.is_open())
	{
		for (int i = 0; i < sizeMaster; i++)
		{
			hSave << MSorderlib[i].front();
			for (size_t n = 1; n < MSorderlib[i].size(); n++)
			{
				hSave << "|" << MSorderlib[i][n];
			}
			hSave << endl;
		}
		hSave.close();
	}
}
void ReadMasterSubOrdersFromFile()
{
	std::ifstream in(MasterSubOrdersFile);
	std::string line;
	if (in)
	{
		while (getline(in, line))
		{
			ExtLogger.Out("[%s] Master-sub orders '%s'", __FUNCTION__, line.data());
			vector <string> temp;
			Split(line, "|", temp);
			vector <int> inserter;
			for (size_t i = 0; i < temp.size(); i++)
			{
				inserter.push_back(atoi(temp[i].data()));
			}
			MSorderlib.push_back(inserter);
		}
	}
	in.close();
	//DeleteFileA(MasterSubOrdersFile.data());

}
发布了101 篇原创文章 · 获赞 3 · 访问量 6352

猜你喜欢

转载自blog.csdn.net/qq_37631516/article/details/104293237