QT使用 QDomElement 读写 xml 文件.

 QT使用 QDomElement 读写 xml 文件. 或文件结构相同的文本皆可以.

已经封装起来了.可以直接使用.  这是头文件.

下载链接:  https://download.csdn.net/download/yuansacsdn/11852317

#include <QSharedPointer>
#include <QtXml/QDomElement>
class QString;

class  ParserConifg 
{
public:
	ParserConifg();
	~ParserConifg();
public:
	virtual bool load();
	virtual bool save();

	/// \brief: 设置当前配置文件的路径文件名
	bool setFileName(const QString &filePath);
	/// \brief: 读配置文件
	bool readFile();

	/// \brief: 获得父节点下的某个子节点
	/// \param: node 父节点
	/// \param: childNodeName 子节点名字
	/// \param: childeNode 获得子节点
	bool getChildElement(const QDomElement &node, const QString &childNodeName, QDomElement &childNode);
	
	/// \brief: 获得节点下某个子节点的一个属性值
	/// \param: node 父节点
	/// \param: childNodeName 子节点名字
	/// \param: attribName 属性名字
	/// \param: attribValue 属性值
	bool getChildAttribValue(const QDomElement &node, const QString &childNodeName,
									const QString &attribName, QString &attribValue);

	/// \brief: 获得当前节点下的属性值
	/// \param: node 操作节点
	/// \param: attribName 属性名字
	/// \param: attribValue 属性值
	bool getAttribValue(const QDomElement &node, const QString &attribName, QString &attribValue);

	/// \brief: 获得节点下某个子节点的中间值
	/// \param: node 父节点
	/// \param: elementName 子节点名字
	/// \param: elementValue 中间值 
	bool getChildElementValue(const QDomElement &node, const QString &elementName, QString &elementValue);

	/// \brief: 获得当前节点的中间值
	/// \param: node 操作节点
	/// \param: elementValue 中间值 
	bool getElementValue(const QDomElement &node, QString &elementValue);

	/// \brief: 创建新的配置文件
	/// \brief: rootName 根节点
	bool createNewConfig(const QString &rootName);
	
	/// \brief: 添加一个子节点
	/// \param: node 父节点
	/// \param: nodeName 子节点名
	QDomElement addElement(QDomElement &node, const QString &nodeName);
	
	/// \brief: 为当前节点添加属性
	/// \param: node 操作节点
	/// \param: nodeValueName ,nodeValue 属性名字和属性值
	bool setAttribValue(QDomElement &node, const QString &nodeValueName, const QString &nodeValue);
	
	/// \brief: 为当前节点添加中间值
	/// \param: node 操作节点
	/// \param: elementValue 中间值 
	bool setElementValue(QDomElement &node, const QString &elementValue);

	/// \brief: 保存配置文件
	bool saveFile();

public:
	QDomElement readRootNode_;		// 读配置的的根节点	
	QDomElement saveRootNode_;		// 写配置文件的根节点
private:
	class PImpl;
	QSharedPointer<PImpl> impl_;
};

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值