C# 根據Url下載文件/獲取文件流


 /// <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;

        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM