.net中建立xml檔案的兩種方法

來源:互聯網
上載者:User

標籤:xsl   ccs   irb   w3g   dff   bic   seq   sms   xdp   

.net中建立xml檔案的兩種方法

方法1:根據xml結構一步一步構建xml文檔,儲存檔案(動態方式)

方法2:直接載入xml結構,儲存檔案(固定方式)

 

方法1:動態建立xml文檔

根據傳遞的值,構建xml文檔結構

1、建立實體類,儲存表單傳遞的值

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace CreateXmlTest.Model{    public class XmlTest    {        //xml文檔名稱        public string Name { get; set; }        //廠商名稱        public string Factory { get; set; }        //上傳方式        public string UpMethod { get; set; }        //壓縮方式        public string Compress { get; set; }    }}

 2、建立表單頁面

3、固定方式和靈活方式的源碼

using CreateXmlTest.Model;using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;using System.Xml;namespace CreateXmlTest{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();        }        /// <summary>        /// 固定方式模板        /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        private void btnModel_Click(object sender, EventArgs e)        {            //建立空的xml文檔            XmlDocument xmldoc = new XmlDocument();            xmldoc.LoadXml("<?xml version=‘1.0‘ encoding=‘utf-8‘?>"+                "<bookstore>"+                "<book>"+                "<name>我不是一個人戰鬥</name>"+                "<author>吳京著</author>"+                "<price>99.8元</price>"+                "</book>"+                "</bookstore>");            xmldoc.Save("測試1.xml");        }        /// <summary>        /// 靈活方式模板        /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        private void btnModel1_Click(object sender, EventArgs e)        {            XmlTest oms = new XmlTest();            //擷取儲存xml名稱            oms.Name = this.txt_Model.Text;            //判斷廠商儲存的xml值            if (this.rad_3shape.Checked)            {                oms.Factory =this.rad_3shape.Text;            }            if (this.rad_ruike.Checked)            {                oms.Factory = this.rad_ruike.Text;            }            //判斷壓縮格式儲存的xml值            if (this.rad_3oxz.Checked)            {                oms.Compress = this.rad_3oxz.Text;            }            if (this.rad_zip.Checked)            {                oms.Compress = this.rad_zip.Text;            }            //判斷儲存的xml值            if (this.rad_web.Checked)            {                oms.UpMethod = this.rad_web.Text;            }            if (this.rad_ftp.Checked)            {                oms.UpMethod = this.rad_ftp.Text;            }            //MessageBox.Show("廠商名稱:"+oms.Factory +",壓縮格式:"+oms.Compress+",上傳方式:"+oms.UpMethod);            //建立xml文檔對象            XmlDocument xmldoc = new XmlDocument();            XmlText xmltext;            //加入xml的聲明段落            XmlNode xmlnode = xmldoc.CreateXmlDeclaration("1.0","utf-8",null);            xmldoc.AppendChild(xmlnode);            //添加一個根項目            //建立元素節點ModelConfig            XmlElement xmlele = xmldoc.CreateElement("","ModelConfig", "");            //建立文本節點            xmltext = xmldoc.CreateTextNode("");            //建立元素節點的文本節點            xmlele.AppendChild(xmltext);            //繫結元素節點屬於xml文檔            xmldoc.AppendChild(xmlele);            //添加一個子項目            XmlElement xmlele1 = xmldoc.CreateElement("", "Config", "");            xmltext = xmldoc.CreateTextNode("");            xmlele1.AppendChild(xmltext);            //建立元素節點的屬性節點            xmlele1.SetAttribute("id","1");            //繫結元素節點Config在ModelCofig下            xmldoc.ChildNodes.Item(1).AppendChild(xmlele1);            //添加第二個子項目            XmlElement xmlele11 = xmldoc.CreateElement("","Config","");            xmltext = xmldoc.CreateTextNode("配置2");            xmlele11.AppendChild(xmltext);            xmlele11.SetAttribute("id","2");            xmldoc.ChildNodes.Item(1).AppendChild(xmlele11);            //建立第一個子項目的子項目            XmlElement xmlele2 = xmldoc.CreateElement("","FactoryName","");            xmltext = xmldoc.CreateTextNode(oms.Factory);            xmlele2.AppendChild(xmltext);            xmldoc.ChildNodes.Item(1).AppendChild(xmlele1).AppendChild(xmlele2);            XmlElement xmlele3 = xmldoc.CreateElement("","CompressMethod","");            xmltext = xmldoc.CreateTextNode(oms.Compress);            xmlele3.AppendChild(xmltext);            xmldoc.ChildNodes.Item(1).AppendChild(xmlele1).AppendChild(xmlele3);            XmlElement xmlele4 = xmldoc.CreateElement("","UpMethod","");            xmltext = xmldoc.CreateTextNode(oms.UpMethod);            xmlele4.AppendChild(xmltext);            xmldoc.ChildNodes.Item(1).AppendChild(xmlele1).AppendChild(xmlele4);            //儲存xml成檔案            xmldoc.Save(oms.Name+".xml");        }    }}

 4、固定建立的xml文檔和靈活建立的xml文檔視圖

1)產生的xml文檔在項目的bin下面

2)測試模板1結果檢視(固定)

3)測試模板2結果檢視(動態)

參考來源:

http://www.cnblogs.com/jhxk/articles/1872930.html

.net中建立xml檔案的兩種方法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.