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


C# WebDownload.DownloadFile方法代码示例

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


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

示例1: BackupAndUpdateSize

        /// <summary>
        /// Downloads a back of a given media link. Also updates its size information so it can be loaded properly in the website.
        /// </summary>
        /// <param name="url"></param>
        public static void BackupAndUpdateSize(string url)
        {
            if (!Constants.DownloadData)
            return;
              // Use the last part of url to get a cleaner file name. May cause issues in the future but unlikely.
              var split = url.Split('/');
              var fileName = split[split.Length - 1];
              // Remove illegal characters to avoid problems with filesystems.
              fileName = fileName.Replace("\\", "").Replace("\"", "");
              if (Path.GetExtension(fileName).Equals(".gif"))
              {
            // Separate gifs based on source to get a nicer structure (no real advantage).
            if (url.Contains("gfycat"))
              fileName = Constants.BackupLocation + "gfycat\\" + fileName;
            else if(url.Contains("imgur"))
              fileName = Constants.BackupLocation + "imgur\\" + fileName;
            else
              fileName = Constants.BackupLocation + fileName;
              }
              else
            fileName = Constants.DataOtherRaw + Constants.LocalMediaFolder + CurrentDungeon + "\\" + fileName;
              // Function gets called for all kinds of links. Obviously all media files have a file extension.
              if (Path.GetExtension(fileName).Length == 0)
            return;
              if (downloadedFileNames.Contains(url))
            return;

              downloadedFileNames.Add(url);
              var dirName = Path.GetDirectoryName(fileName);
              if (dirName != null)
            Directory.CreateDirectory(dirName);
              // Don't download already existing files to make this much faster. This means that the backup must be deleted manually if content changes.
              if (!File.Exists(fileName))
              {
            // Use a custom timeout to make this work much faster.
            var timeOut = 10000;
            if (Path.GetExtension(fileName).Equals(".gif"))
              timeOut = 30000;
            using (var client = new WebDownload(timeOut))
            {
              var row = Console.CursorTop;
              try
              {
            Console.Write("Downloading " + url);
            client.DownloadFile(url, fileName);
            Helper.ClearConsoleLine(row);
              }
              catch (WebException)
              {
            Helper.ClearConsoleLine(row);
            ErrorHandler.ShowWarningMessage("File \"" + url + "\" can't be downloaded.");
              }
            }
              }
              if (!File.Exists(fileName))
            return;
              UpdateSizeInformation(fileName, url);
        }
开发者ID:Wethospu,项目名称:gw2dungeons,代码行数:62,代码来源:LinkGenerator.cs


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