当前位置: 首页>>代码示例>>C++>>正文


C++ XmlWriter::getString方法代码示例

本文整理汇总了C++中XmlWriter::getString方法的典型用法代码示例。如果您正苦于以下问题:C++ XmlWriter::getString方法的具体用法?C++ XmlWriter::getString怎么用?C++ XmlWriter::getString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在XmlWriter的用法示例。


在下文中一共展示了XmlWriter::getString方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: serialize

	std::string AnimeSerializer::serialize(const Anime& anime) const {
        XmlWriter writer;
        writer.startDoc();
		writer.startElement("entry");
        writer.writeElement("episode",             std::to_string(anime.episodes));
        writer.writeElement("status",              std::to_string(static_cast<int>(anime.status)));
        writer.writeElement("score",               std::to_string(anime.score));
        writer.writeElement("downloaded_episodes", std::to_string(anime.downloaded_items));
        if (anime.has_details) {
            writer.writeElement("storage_type",    std::to_string(static_cast<int>(anime.storage_type)));
            writer.writeElement("storage_value",   std::to_string(anime.storage_value));
            writer.writeElement("times_rewatched", std::to_string(anime.times_consumed));
            writer.writeElement("rewatch_value",   std::to_string(static_cast<int>(anime.reconsume_value)));
        }
        auto start = Glib::Date();
        start.set_parse(anime.date_start);
        if (start.valid()) {
            writer.writeElement("date_start", start.format_string("%m%d%Y"));
        }

        auto finish = Glib::Date();
        finish.set_parse(anime.date_finish);
        if (finish.valid()) {
            writer.writeElement("date_finish", finish.format_string("%m%d%Y"));
        }

        if (anime.has_details) {
            writer.writeElement("priority", std::to_string(static_cast<int>(anime.priority)));
            writer.writeElement("enable_discussion", anime.enable_discussion?"1":"0");
        }
        writer.writeElement("enable_rewatching", anime.enable_reconsuming?"1":"0");
        if (anime.has_details) {
            writer.writeElement("comments", anime.comments);
            writer.writeElement("fansub_group", anime.fansub_group);
        }

        std::string tags;
		auto iter = anime.tags.begin();
		bool was_first = true;
		while (iter != anime.tags.end()) {
			if (!was_first)
				tags += ", ";
			tags += *iter;
			was_first = false;
			++iter;
		}

        writer.writeElement("tags", tags);
        writer.writeElement("rewatch_episode", std::to_string(anime.rewatch_episode));
        writer.endDoc();
        return writer.getString();
	}
开发者ID:talisein,项目名称:mal-gtk,代码行数:52,代码来源:anime_serializer.cpp


注:本文中的XmlWriter::getString方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。