• c++ builder 中的 XMLDocument 类详解(7) 获取节点名称与节点的属性名称


    //---------------------------------------------------------------------------
    
    #ifndef Unit1H
    #define Unit1H
    //---------------------------------------------------------------------------
    #include <Classes.hpp>
    #include <Controls.hpp>
    #include <StdCtrls.hpp>
    #include <Forms.hpp>
    #include <msxmldom.hpp>
    #include <XMLDoc.hpp>
    #include <xmldom.hpp>
    #include <XMLIntf.hpp>
    //---------------------------------------------------------------------------
    class TForm1 : public TForm
    {
    __published:	// IDE-managed Components
        TButton *btn_1;
        TButton *btn_2;
        TXMLDocument *XMLDocument1;
        void __fastcall btn_1Click(TObject *Sender);
        void __fastcall FormCreate(TObject *Sender);
        void __fastcall btn_2Click(TObject *Sender);
    private:	// User declarations
    public:		// User declarations
        __fastcall TForm1(TComponent* Owner);
    };
    //---------------------------------------------------------------------------
    extern PACKAGE TForm1 *Form1;
    //---------------------------------------------------------------------------
    #endif
    
    //---------------------------------------------------------------------------
    
    #include <vcl.h>
    #pragma hdrstop
    
    #include "Unit1.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::FormCreate(TObject *Sender)
    {
        XMLDocument1->LoadFromFile("D:\\code\\B_C_B\\XMLDocument\\test.xml");
    }
    //---------------------------------------------------------------------------
    
    void __fastcall TForm1::btn_1Click(TObject *Sender)
    {
        _di_IXMLNode node;
        node=XMLDocument1->DocumentElement;
    
        //显示根结点的名字
        ShowMessage(node->NodeName);//显示 科室名单
    
        // 显示第二级第一个结点的名称
        node=node->ChildNodes->Nodes[0];
        ShowMessage(node->NodeName);//显示 人员
    
        //....
        node=node->ChildNodes->Nodes[0];
        ShowMessage(node->NodeName);//显示 姓名
    
    
    }
    //---------------------------------------------------------------------------
    
    void __fastcall TForm1::btn_2Click(TObject *Sender)
    {
        //获取属性名称
    
        _di_IXMLNode node;
        node=XMLDocument1->DocumentElement;
    
        //显示根结点的属性名称
        ShowMessage(node->AttributeNodes->Nodes[0]->NodeName);//显示 备注
    
        node=node->ChildNodes->Nodes[0];
        ShowMessage(node->AttributeNodes->Nodes[0]->NodeName);
    }
    //---------------------------------------------------------------------------
    
    本人新博客网址为:http://www.hizds.com
    本博客注有“转”字样的为转载文章,其余为本人原创文章,转载请务必注明出处或保存此段。c++/lua/windows逆向交流群:69148232
  • 相关阅读:
    2017-10-22—光电二极管
    PCB微带线和带状线、共模信号和差模信号区别
    高速信号-Stub线与Via stub
    电子产品的接地问题
    锂电池保护板工作原理及过放过充短路保护解析
    MEMS-微机电系统
    COM和TTL电平的判决阈值-上下限
    三极管发射结并联二极管的作用
    SQL语句为什么要放中括号?
    如果让HTTP请求返回JSON格式的数据
  • 原文地址:https://www.cnblogs.com/zhangdongsheng/p/2075780.html
Copyright © 2020-2023  润新知