• 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);
                        }
                    }
                }

            }

  • 相关阅读:
    模拟器安装.apk包_夜神模拟器
    SDK安装报错_2019
    Jenkins安装插件方法
    Jenkins安装
    Python项目第三方库安装_pip freeze命令
    深入理解Java虚拟机—内存分配
    深入理解Java虚拟机—垃圾回收 下
    深入理解Java虚拟机—垃圾回收 上
    深入理解Java虚拟机—OutOfMemoryError异常
    深入理解Java虚拟机—Java内存区域
  • 原文地址:https://www.cnblogs.com/chenqingwei/p/1769647.html
Copyright © 2020-2023  润新知