当前位置: 首页>>代码示例>>C#>>正文


C# Dir.TryGetFile方法代码示例

本文整理汇总了C#中Dir.TryGetFile方法的典型用法代码示例。如果您正苦于以下问题:C# Dir.TryGetFile方法的具体用法?C# Dir.TryGetFile怎么用?C# Dir.TryGetFile使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Dir的用法示例。


在下文中一共展示了Dir.TryGetFile方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: InstallOrUninstall

        public override bool InstallOrUninstall()
        {
            string oldCustom = Installed ? App.PathCustom : App.PathCustom_;
            string newCustom = Installed ? App.PathCustom_ : App.PathCustom;

            Dir oldDir = new Dir(oldCustom);
            Dir newDir = new Dir(newCustom);

            string tmp;

            List<string> files = new List<string>();

            var p = _Path.GetFileNameWithoutExtension(Path) + ".";

            string newPath = _Path.Combine(newCustom, _Path.GetFileName(Path));

            foreach (string s in oldDir.Files)
            {
                if (s.StartsWith(p, StringComparison.OrdinalIgnoreCase))
                {
                    if (newDir.TryGetFile(s, out tmp))
                        return false;

                    files.Add(s);
                }
            }

            if (files.Count == 0)
                return false;

            try
            {
                foreach (string s in files)
                    File.Move(_Path.Combine(oldCustom, s), _Path.Combine(newCustom, s));
                Path = newPath;
                Installed = !Installed;
                return true;
            }
            catch
            {

            }

            return false;
        }
开发者ID:fourtf,项目名称:4Plug,代码行数:45,代码来源:FilePluginWidget.cs

示例2: Rename

        public override bool Rename(string name)
        {
            string custom = Installed ? App.PathCustom : App.PathCustom_;

            Dir dir = new Dir(custom);
            string tmp;
            List<Tuple<string, string>> files = new List<Tuple<string, string>>();
            string p = Name + ".";

            foreach (string s in dir.Files)
            {
                if (s.StartsWith(p, StringComparison.OrdinalIgnoreCase))
                {
                    string newFile = name + "." + s.Substring(p.Length);

                    if (dir.TryGetFile(newFile, out tmp))
                        return false;

                    files.Add(Tuple.Create(_Path.Combine(custom, s), _Path.Combine(custom, newFile)));
                }
            }

            if (files.Count == 0)
                return false;

            try
            {
                foreach (var x in files)
                    File.Move(x.Item1, x.Item2);
                Name = name;
                lblName.Text = name + new string(' ', 30);
                return true;
            }
            catch
            {

            }

            return false;
        }
开发者ID:fourtf,项目名称:4Plug,代码行数:40,代码来源:FilePluginWidget.cs

示例3: Load

        public override void Load()
        {
            Dir dir = new Dir(new FileInfo(Path).Directory.FullName);
            string tmp;

            if (dir.TryGetFile(_Path.GetFileNameWithoutExtension(Path) + ".plugin.xml", out tmp))
                LoadXml(tmp, false);
        }
开发者ID:fourtf,项目名称:4Plug,代码行数:8,代码来源:FilePluginWidget.cs

示例4: Load

        public override void Load()
        {
            Dir dir = new Dir(Path);

            string tmp;
            if (dir.TryGetFile("thumbnail.png", out tmp) || dir.TryGetFile("thumbnail40.png", out tmp))
            {
                try
                {
                    pluginImage.Image = Image.FromFile(tmp);
                }
                catch { }
            }
            else
            {
                pluginImage.Image = noImage;
            }

            if (dir.TryGetFile("mod.xml", out tmp))
            {
                pluginDotXmlPath = "mod.xml";
                LoadXml(tmp);
            }
            else if (dir.TryGetFile("data.txt", out tmp))
            {
                ProcessDataTxt(File.ReadAllText(tmp));
            }

            if (dir.TryGetFile("readme.md", out tmp) || dir.TryGetFile("readme.txt", out tmp))
            {
                readmePath = tmp;
                btnReadme.Visible = true;
            }
            if (dir.TryGetFile("faq.md", out tmp) || dir.TryGetFile("faq.txt", out tmp))
            {
                faqPath = tmp;
                btnFaq.Visible = true;
            }
            if (dir.TryGetFile("changelog.md", out tmp) || dir.TryGetFile("changelog.txt", out tmp))
            {
                changelogPath = tmp;
                btnChangelog.Visible = true;
            }
        }
开发者ID:fourtf,项目名称:4Plug,代码行数:44,代码来源:DirectoryPluginWidget.cs


注:本文中的Dir.TryGetFile方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。