加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
dXml.h 1.68 KB
一键复制 编辑 原始数据 按行查看 历史
箜栢 提交于 2020-03-02 09:14 . 第一次提交
#ifndef H_MY__DXML_H__H
#define H_MY__DXML_H__H
#include <QDomDocument>
namespace dXml {
class XmlDataDoc;
class XmlDataUnit;
// node 转换到 QDomElement 树
QDomElement toDocElement(QDomDocument& doc, XmlDataUnit* node);
// 从 QDomElement 转 node
void domDocumentToDxmlUnitDoc(dXml::XmlDataUnit* saveToData, QString& outPITarget, QString& outPIData, QDomDocument doc);
// 存储到 file
// nodes 多个根节点
bool save(QList<XmlDataUnit*>& nodes, const QString& file, QDomDocument* qDomDocument = Q_NULLPTR, int tabSize = 4, QDomNode::EncodingPolicy edcoding = QDomNode::EncodingFromDocument);
/*
* saveToDataList 用于存储结果
* outPITarget 存储 ProcessingInstructionTarget
* outPIData 存储 ProcessingInstructionData
*/
bool readXmlFile(XmlDataUnit* saveToData, QString& outPITarget, QString& outPIData, const QString& file);
/*
* 从文本中读取到xml
*/
bool readStringToXml(XmlDataUnit* saveToData, QString& outPITarget, QString& outPIData, const QString& strStream);
/*
* QDomNodeList 转 QList<dXml::XmlDataUnit*>
*/
QList<dXml::XmlDataUnit*> docChildRootNodesToXmlDataUnity(const QDomNodeList& domNodes, XmlDataUnit* paren);
inline const char* getProcessingInstructionTarget( ) {
static const char* instance = "xml";
return instance;
}
inline const char* getProcessingInstructionData( ) {
static const char* instance = "version=\"1.0\" encoding=\"UTF-8\"";
return instance;
}
inline const char* getDefaultXmlxStr( ) {
static const char* instance = "<?xml version=\"1.0\" encoding=\"utf-8\"?><setting><language select=\"zh-CN\"><zh-CN>zh-cn.lg</zh-CN><en>en.lg</en></language></setting>";
return instance;
}
}
#endif // H_MY__DXML_H__H
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化