本文整理汇总了C++中XmlWriter::store方法的典型用法代码示例。如果您正苦于以下问题:C++ XmlWriter::store方法的具体用法?C++ XmlWriter::store怎么用?C++ XmlWriter::store使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XmlWriter
的用法示例。
在下文中一共展示了XmlWriter::store方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: save
void Engine::save() throw(PersistingException*)
{
tracer->invoked(__func__);
if (m_dirty) {
tracer->sdebug(__func__) << "engine is dirty --> saving it..." << endl;
// rename current file
QDir path = m_fileAlbum->dirPath(true);
QString oldFileName = m_fileAlbum->fileName();
// create new filename
QString basename = QFileInfo(oldFileName).baseName(true);
QString timestamp = QDateTime::currentDateTime().toString("yyyyMMdd-hhmmsszzz");
QString newFileName = QString("%1-%2.%3").arg(basename).arg(timestamp).arg(Constants::FILE_EXTENSION);
tracer->sdebug(__func__) << "backing up file in directory '" << path.absPath() << "': '" << oldFileName << "' --> '" << newFileName << "'..." << endl;
if (!path.rename(oldFileName, newFileName, false)) {
QString msg = QString("Could not move old file '%1/%2' to '%3/%4'. Not saving file. Use 'Save As'.").arg(path.absPath()).arg(oldFileName).arg(path.absPath()).arg(newFileName);
throw new PersistingException(
msg,
""
);
}
// save
XmlWriter writer = XmlWriter(*this);
writer.store(new QFile(m_fileAlbum->absFilePath()));
}
m_dirty = false;
}
示例2: saveAs
void Engine::saveAs(QFileInfo& newFile) throw(PersistingException*)
{
m_fileAlbum = new QFileInfo(newFile);
m_uid = generateUid();
// save
XmlWriter writer = XmlWriter(*this);
writer.store(new QFile(m_fileAlbum->absFilePath()));
m_dirty = false;
}