/// <summary> /// http下載文件 /// </summary> /// <param name="url">下載文件地址</param> /// <returns></returns> public static Stream HttpDownload(string url) { using (var client = new WebClient()) { string tempFile = 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; }