日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

RSS閱讀器制作之將TreeView數(shù)據(jù)導出為XML數(shù)據(jù)...

 busfly 2007-01-09

//遞歸遍歷節(jié)點內(nèi)容,最關(guān)鍵的函數(shù) private void parseNode(TreeNode tn) { IEnumerator ie = tn.Nodes.GetEnumerator(); while (ie.MoveNext()) { TreeNode ctn = (TreeNode) ie.Current; //為最底層節(jié)點,即該節(jié)點為RSS節(jié)點 if (ctn.GetNodeCount(true) == 0) { xmlLine = GetRSSText(ctn); sr.WriteLine(xmlLine); }

/*-------------------------------------------------------------
 * 作者:劉曉松
 * 版本:1.0.0
 * 日期:2006.10.29
 * 描述:將TreeView中導出為XML數(shù)據(jù)
-------------------------------------------------------------
*/

using System;
using System.Collections;
using System.IO;
using System.Windows.Forms;

namespace TreeViewExport
{
    
/// <summary>
   
/// 將TreeView中導出為XML數(shù)據(jù)
   
/// </summary>

   public class TreeViewToXmlB
   
{
        
//XML每行的內(nèi)容
        private string xmlLine = "";
        
//用于寫XML文件
        private StreamWriter sr;

        
/// <summary>
        
/// 構(gòu)造函數(shù)
        
/// </summary>

        public TreeViewToXmlB()
        
{
            
        }


        
/// <summary>
        
/// 將TreeView中導出為XML數(shù)據(jù)
        
/// </summary>
        
/// <param name="tv">TreeView控件</param>
        
/// <param name="filename">XML文件的保存路徑</param>

        public void exportToXml(TreeView tv, string filename) 
        
{
            sr 
= new StreamWriter(filename, false, System.Text.Encoding.UTF8);
            
//寫文件頭部內(nèi)容
            
//下面是生成RSS的OPML文件
            sr.WriteLine("<?xml version="1.0" encoding="UTF-8"?>");
            sr.WriteLine(
"<opml version="1.0">");
            sr.WriteLine(
"<head>");
            sr.WriteLine(
"<title>RSS</title>");
            sr.WriteLine(
"</head>");
            sr.WriteLine(
"<body>");

            
//遍歷根節(jié)點
            foreach (TreeNode node in tv.Nodes)
            
{
                
if (node.GetNodeCount(true== 0)
                
{
                    xmlLine 
= GetRSSText(node);
                }

                
else
                
{
                    xmlLine 
= GetDirectoryText(node);
                }


                sr.WriteLine(xmlLine);

                
//遞歸遍歷節(jié)點
                parseNode(node);
            }


            
//寫文件尾部內(nèi)容
            sr.WriteLine("</body>");
            sr.WriteLine(
"</opml>");
            sr.Close();
        }


        
//遞歸遍歷節(jié)點內(nèi)容,最關(guān)鍵的函數(shù)
        private void parseNode(TreeNode tn) 
        
{
            IEnumerator ie 
= tn.Nodes.GetEnumerator();

            
while (ie.MoveNext()) 
            
{
                TreeNode ctn 
= (TreeNode) ie.Current;

                
//為最底層節(jié)點,即該節(jié)點為RSS節(jié)點
                if (ctn.GetNodeCount(true== 0)
                
{
                    xmlLine 
= GetRSSText(ctn);
                    sr.WriteLine(xmlLine);
                }

                
else//不是最底層節(jié)點,即該節(jié)點為目錄節(jié)點
                {
                    xmlLine 
= GetDirectoryText(ctn);
                    sr.WriteLine(xmlLine);
                }


                
//如果還有子節(jié)點則繼續(xù)遍歷
                if (ctn.GetNodeCount(true> 0)
                
{
                    parseNode(ctn);
                }

            }


            sr.WriteLine(
"</outline>");
        }


        
//成生RSS節(jié)點的XML文本行
        private string GetRSSText(TreeNode node)
        
{
            
//根據(jù)Node屬性生成XML文本
            string rssText = "<outline type="rss" text="" + node.Text + "" xmlUrl="URL"/>";

            
return rssText;
        }


        
//成生目錄節(jié)點的XML文本行
        private string GetDirectoryText(TreeNode node)
        
{
            
//根據(jù)Node屬性生成XML文本
            string directoryText = "<outline text="" + node.Text + "">";

            
return directoryText;
        }

   }

}

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多