Files
envi-code/SourceCode/Code2026/tg_shs/inc/pipebase/XMLDocTree.h
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

44 lines
852 B
C++

#ifndef _XMLDOCTREE_H__
#define _XMLDOCTREE_H__
#if _MSC_VER > 1000
#pragma once
#endif
class CXMLDocTree
{
public:
CXMLDocTree();
virtual ~CXMLDocTree();
BOOL Read(LPCTSTR pszFile);
BOOL SetXmlText(LPCTSTR pszXmlText);
POSITION GetRootItem();
BOOL GetKeyword(POSITION ps,CString& sKeyword);
BOOL GetValueText(POSITION ps,CString& sText);
BOOL SetValueText(POSITION ps,CString& sText);
POSITION GetNextSiblingItem(POSITION ps);
POSITION GetPrevSiblingItem(POSITION ps);
POSITION GetChildItem(POSITION ps);
POSITION GetParentItem(POSITION ps);
BOOL ItemHasChildren(POSITION ps);
private:
BOOL MakeChildren(POSITION psItem,const CString& sXMLText);
BOOL MakeNextSiblingItem(POSITION& pLast,const CString& sXMLText,CString& sNext);
private:
POSITION m_pRoot;
CPtrArray m_arBuffer;
};
#endif //_XMLDOCTREE_H__