1. 程式人生 > >判斷本地系統目錄下是否存在XML檔案,如果不存在就建立一個XMl檔案,若存在就在裡面執行新增資料

判斷本地系統目錄下是否存在XML檔案,如果不存在就建立一個XMl檔案,若存在就在裡面執行新增資料

這是我為專案中寫的一個測試的例子,

假如,您需要這樣一個xml檔案,

<?xml version="1.0" encoding="utf-8"?>
<A>
  <a>
    <id>001</id>
    <name>lee</name>
    <time>2013-06-25 16:39:04</time>
  </a>
</A>

如果,本地目錄下沒有這樣的xml檔案,就生成一個。。。

如果有,就執行往裡面加入資料,如:

<?xml version="
1.0" encoding="utf-8"?> <A> <a> <id>001</id> <name>lee</name> <time>2013-06-25 16:39:04</time> </a> <a> <id>002</id> <name>wan</name> <time>2013-06-25 16:40:07</time> </a> <a> <id>003
</id> <name>wang</name> <time>2013-06-25 16:48:49</time> </a> ... ... <a> <id>00n</id> <name>xie</name> <time>2013-06-25 16:59:58</time> </a> </A>

其實,我想要的就是這樣的效果,以下就是具體的程式碼實現過程(說明:下面程式碼實現的結果不是上面的xml,那是我隨便寫的,大概形式是這樣的)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Xml;
using System.IO;

namespace ThreadExample
{
    class Program
    {
        static void Main(string[] args)
        {
            string path = "D:\\Click_statistics.xml";
            XmlDocument doc = new XmlDocument();

            if (!File.Exists(path))
            {
                //建立標頭檔案宣告
                XmlDeclaration xmldecl;
                xmldecl = doc.CreateXmlDeclaration("1.0", "utf-8", null);

                //Add the new node to the document.
                XmlElement root = doc.DocumentElement;
                doc.InsertBefore(xmldecl, root);

                XmlElement Node = doc.CreateElement("zhjs");//建立一個zhjs節點          
                doc.AppendChild(Node);

                XmlElement Node1 = doc.CreateElement("total");//建立節點zhjs子節點total   
                doc.DocumentElement.AppendChild(Node1);

                XmlElement Node2 = doc.CreateElement("f_name");//建立節點total子節點f_name 
                Node2.InnerText = "資訊查詢";
                Node1.AppendChild(Node2);

                XmlElement Node3 = doc.CreateElement("c_name");//建立節點total子節點c_name   
                Node3.InnerText = "";
                Node1.AppendChild(Node3);

                XmlElement Node4 = doc.CreateElement("time");//建立節點total子節點time
                Node4.InnerText = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                Node1.AppendChild(Node4);

                doc.Save(path);     
            }
            else
            {
                doc.Load(path);
                XmlNode xmlnode = doc.SelectSingleNode("zhjs");

                XmlElement Node1 = doc.CreateElement("total");//建立節點zhjs子節點total 
                doc.DocumentElement.AppendChild(Node1);

                XmlElement Node2 = doc.CreateElement("f_name");//建立節點total子節點f_name 
                Node2.InnerText = "公交查詢";
                Node1.AppendChild(Node2);

                XmlElement Node3 = doc.CreateElement("c_name");//建立節點total子節點c_name
                Node3.InnerText = "";
                Node1.AppendChild(Node3);

                XmlElement Node4 = doc.CreateElement("time");//建立節點total子節點time
                Node4.InnerText = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                Node1.AppendChild(Node4);

                doc.Save(path);
            }
        }
    }
}