C# 根據Url下載檔案/獲取檔案流
阿新 • • 發佈:2020-09-21
/// <summary> /// http下載檔案 /// </summary> /// <param name="url">下載檔案地址</param> /// <returns></returns> public static Stream HttpDownload(string url) { using (var client = new WebClient()) { stringtempFile = Path.GetTempFileName(); client.DownloadFile(url, tempFile);//下載臨時檔案 Console.WriteLine("Using " + tempFile); return FileToStream(tempFile, true); } } /// <summary> /// 檔案轉流 /// </summary> /// <param name="fileName">檔案路徑</param>/// <param name="isDelete">是否刪除臨時檔案</param> /// <returns></returns> public static Stream FileToStream(string fileName, bool isDelete = false) { //開啟檔案 FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read);// 讀取檔案的 byte[] byte[] bytes = new byte[fileStream.Length]; fileStream.Read(bytes, 0, bytes.Length); fileStream.Close(); // 把 byte[] 轉換成 Stream Stream stream = new MemoryStream(bytes); if (isDelete) { File.Delete(fileName);//刪除臨時檔案 } return stream; }