1. 程式人生 > >XML文件操作類VXML

XML文件操作類VXML

存儲 () 相對 reac 打開 轉義字符 -c sys tps

敬告

VXML.cs不是一個通用的類。僅僅是作者為了方便自己的程序編寫。

下載地址

https://github.com/velscode/V-CS-ClassLib

使用說明

目標XML文件,存儲了數據庫連接的一些參數
技術分享圖片

實例化、打開XML文件,查詢database的userid屬性並顯示
技術分享圖片

運行結果
技術分享圖片

源代碼

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Windows.Forms;
/**
 * @ClassName: VXML
 * @Description: 用於支持XML文件相關的操作
 * @Author:Velscode
 * @Date:2019/01
 * @Version V1.0
 * Copyright by Velscode All Rights Reserved
 */
class VXML
{
    private XmlDocument xmlDoc = new XmlDocument();

    /// <summary>
    /// 打開XML文件
    /// </summary>
    /// <param name="path">文件路徑,支持相對路徑,註意轉義字符</param>
    /// <returns>true--打開成功,false--打開失敗</returns>
    public bool OpenFile(string path)
    { 
        try
        { 
            xmlDoc.Load("db.xml");
            return true;
        }
        catch ( Exception ex )
        { 
            MessageBox.Show("打開XML文件失敗\r\n詳細信息:"+ex.ToString(),"Error:VXML.OpenFile()",MessageBoxButtons.OK,MessageBoxIcon.Error);
            return false;
        }
    }

/// <summary>
/// 讀取指定屬性
/// </summary>
/// <param name="node">根節點名</param>
/// <param name="att">節點屬性名</param>
/// <returns></returns>
    public string ReadAttribute( string node, string att )
    { 
        XmlNode xn = xmlDoc.SelectSingleNode(node);
        XmlNodeList xnl = xn.ChildNodes;
        
        foreach(XmlNode xn1 in xnl)
        { 
            XmlElement xe = (XmlElement)xn1;
            
            if( xe.GetAttribute(att).ToString() != "" )
                return xe.GetAttribute(att).ToString();
        }

        return "Not Searched";
    }
}

XML文件操作類VXML