zoukankan      html  css  js  c++  java
  • c# 获取收藏夹目录到树型控件

    private void ReportForm_Load(object sender, EventArgs e)
            {
                DirectoryInfo favfolder = new DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.Favorites));
                FileSystemInfo[] myFileSystemInfo = favfolder.GetFileSystemInfos();
                TreeNode RootNode = new TreeNode();
                RootNode.Text = "收藏夹";
              
                this.treeView1.Nodes.Add(RootNode);
                this.treeView1.ExpandAll();
                GetDir(myFileSystemInfo, RootNode);

            }
            private void GetDir(FileSystemInfo[] myFavDir, TreeNode RootNode)
            {
                string myStr = "";
                string myUrl = "";
                string myDesc = "";
                if (myFavDir == null)
                {
                    throw new ArgumentNullException("myfavdir");
                }
                foreach (FileSystemInfo filesysteminfo in myFavDir)
                {
                    TreeNode tn = new TreeNode();
                    //文件目录
                    if (filesysteminfo.GetType() == typeof(DirectoryInfo))
                    {
                        tn.Text = filesysteminfo.Name;
                        RootNode.Nodes.Add(tn);
                        //强制转化为文件目录格式
                        DirectoryInfo childfile = (DirectoryInfo)filesysteminfo;  
                        //递归调用
                        GetDir(childfile.GetFileSystemInfos(), tn);
                    }
                    //文件格式
                    else if (filesysteminfo.GetType() == typeof(FileInfo))
                    {
                        string fitler = ".url";
                        //过滤功能
                        if (filesysteminfo.FullName.ToLower().EndsWith(fitler.ToLower()))
                        {
                            using (StreamReader sr = new StreamReader(filesysteminfo.FullName, Encoding.Default))
                            {
                                myStr = sr.ReadLine();
                                while (myStr != null)
                                {
                                    //获取URL地址
                                    if (myStr.ToLower().StartsWith(URLPrefix))
                                    {
                                        myUrl = myStr.Substring(URLPrefix.Length);

                                    }
                                    else if (myStr.ToLower().StartsWith(DescriptionPrefix))
                                    {
                                        myDesc = myStr.Substring(DescriptionPrefix.Length);
                                    }
                                    myStr = sr.ReadLine();
                                }
                            }
                            TreeNode tnchild = new TreeNode();
                            tnchild.Text = filesysteminfo.Name;
                            tnchild.Tag = myUrl;
                            RootNode.Nodes.Add(tnchild);
                        }
                    }
                   
                }

            }

  • 相关阅读:
    POJ 1887 Testing the CATCHER
    HDU 3374 String Problem
    HDU 2609 How many
    POJ 1509 Glass Beads
    POJ 1458 Common Subsequence
    POJ 1159 Palindrome
    POJ 1056 IMMEDIATE DECODABILITY
    POJ 3080 Blue Jeans
    POJ 1200 Crazy Search
    软件体系结构的艺术阅读笔记1
  • 原文地址:https://www.cnblogs.com/nosnowwolf/p/815797.html
Copyright © 2011-2022 走看看