本文整理汇总了C++中Writer::Close方法的典型用法代码示例。如果您正苦于以下问题:C++ Writer::Close方法的具体用法?C++ Writer::Close怎么用?C++ Writer::Close使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Writer
的用法示例。
在下文中一共展示了Writer::Close方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: toFile
bool WorldCustom::toFile()
{
cout << "To file: " << file << endl;
resetError();
Writer* writer = new Writer(file.c_str());
if (writer && writer->Open())
{
try
{
writer->writeMultipleFormats("[Continents=%u]\n", continentsVector->size());
for (int i = 0; i < continentsVector->size(); i++)
writer->writeMultipleFormats("%n=%u,%u\n", continentsVector->at(i)->getName(), continentsVector->at(i)->getRegistryValue(), continentsVector->at(i)->getControlValue());
//cout << countriesVector->at(0)->getName();
//cout << continentsVector->at(0)->getName();
writer->writeMultipleFormats("[Territories=%u]\n", countriesVector->size());
for (int i = 0; i < countriesVector->size(); i++)
writer->writeMultipleFormats("%n=%u\n", countriesVector->at(i)->getName().c_str(), countriesVector->at(i)->getRegistryValue());
writer->writeMultipleFormats("[Links=%u]\n", numberOfLinks);
for (int i = 0, j = 0; i < (int)countriesVector->size(); i++)
{
writer->writeMultipleFormats("%u,%u,%u,%u,", countriesVector->at(i)->getRegistryValue(), countriesVector->at(i)->getPositionX(), countriesVector->at(i)->getPositionY(), countriesVector->at(i)->getContinent()->getRegistryValue());
for (j = 0; j < (int)countriesVector->at(i)->getConnectedCountries()->size(); j++)
{
writer->writeNextPosSignedINT32(countriesVector->at(i)->getConnectedCountries()->at(j)->getRegistryValue());
if (j == countriesVector->at(i)->getConnectedCountries()->size() - 1)
writer->writeNextByte('\n');
else
writer->writeNextByte(',');
}
}
writer->writeNextByte('\n');
}
//The data sent to the writer was corrupted.
catch (DataNotGood dng) {
setError(dng.what());
return false;
}
//File does not respond.
catch (fileNotGood fng) {
setError(fng.what());
return false;
}
//Close the file whatever happened not to loose data.
writer->Close();
return true;
}
else
setError("Could not open the output file.");
return false;
}
示例2: toFile
/*
* Reversed operation of what happened within analyseFile().
* Please see analyseFile() for more information.
*/
bool World::toFile(const char* _outputFile)
{
lastOperationSuccess = false;
Writer* writer = new Writer(_outputFile);
if (writer && writer->Open())
{
try
{
writer->writeMultipleFormats("[Continents=%u]\n", continentsVector->size());
for (int i = 0; i < continentsVector->size(); i++)
writer->writeMultipleFormats("%n=%u\n", continentsVector->at(i)->getName(), continentsVector->at(i)->getRegistryValue());
writer->writeMultipleFormats("[Territories=%u]\n", countriesVector->size());
for (int i = 0; i < countriesVector->size(); i++)
writer->writeMultipleFormats("%n=%u\n", countriesVector->at(i)->getName(), countriesVector->at(i)->getRegistryValue());
writer->writeMultipleFormats("[Links=%u]\n", numberOfLinks);
for (int i = 0, j = 0; i < countriesVector->size(); i++)
{
writer->writeMultipleFormats("%u,%u,%u,%u,", countriesVector->at(i)->getRegistryValue(), countriesVector->at(i)->getPositionX(), countriesVector->at(i)->getPositionY(), countriesVector->at(i)->getContinent()->getRegistryValue());
for (j = 0; j < countriesVector->at(i)->getConnectedCountries()->size(); j++)
{
writer->writeNextPosSignedINT32(countriesVector->at(i)->getConnectedCountries()->at(j)->getRegistryValue());
if (j == countriesVector->at(i)->getConnectedCountries()->size() - 1)
writer->writeNextByte('\n');
else
writer->writeNextByte(',');
}
}
writer->writeNextByte('\n');
}
//The data sent to the writer was corrupted.
catch (DataNotGood dng) {
lastErrorMessage = dng.what();
return false;
}
//File does not respond.
catch (fileNotGood fng) {
lastErrorMessage = fng.what();
return false;
}
//Close the file whatever happened not to loose data.
writer->Close();
lastOperationSuccess = true;
return true;
}
else
lastErrorMessage = "Could not open the output file.";
return false;
}