파일다운로드
http://www.codeguru.com/columns/dotnettips/article.php/c7005
// Remember to add the following using statements to your code // using System.Net; // using System.IO; public static int DownloadFile(String remoteFilename, String localFilename) { // Function will return the number of bytes processed // to the caller. Initialize to 0 here. int bytesProcessed = 0; // Assign values to these objects here so that they can // be referenced in the finally block Stream remoteStream = null; Stream localStream = null; WebResponse response = null; // Use a try/catch/finally block as both the WebRequest and Stream // classes throw exceptions upon error try { // Create a request for the specified remote file name WebRequest request = WebRequest.Create(remoteFilename); if (request != null) { // Send the request to the server and retrieve the // WebResponse object response = request.GetResponse(); if (response != null) { // Once the WebResponse object has been retrieved, // get the stream object associated with the response's data remoteStream = response.GetResponseStream(); // Create the local file localStream = File.Create(localFilename); // Allocate a 1k buffer byte[] buffer = new byte[1024]; int bytesRead; // Simple do/while loop to read from stream until // no bytes are returned do { // Read data (up to 1k) from the stream bytesRead = remoteStream.Read (buffer, 0, buffer.Length); // Write the data to the local file localStream.Write (buffer, 0, bytesRead); // Increment total bytes processed bytesProcessed += bytesRead; } while (bytesRead > 0); } } } catch(Exception e) { Console.WriteLine(e.Message); } finally { // Close the response and streams objects here // to make sure they're closed even if an exception // is thrown at some point if (response != null) response.Close(); if (remoteStream != null) remoteStream.Close(); if (localStream != null) localStream.Close(); } // Return total bytes processed to caller. return bytesProcessed;
Finally, here's an example of using the DownloadFile function.
int read = DownloadFile("http://www.mysite.com/problem1.jpg", "d:\\test.jpg"); Console.WriteLine("{0} bytes written", read);
'C#.NET' 카테고리의 다른 글
클래스 라이브러리에서 web.config 접속정보 읽어오기 (0) | 2009.11.30 |
---|---|
BLOB 저장된 이미지 웹상에 출력하기 (0) | 2009.11.30 |
오라클 트렌젝션 사용하기 (0) | 2009.11.30 |
JavaScript에서 관리 코드 호출 (0) | 2009.07.15 |
[마스터페이지 , masterpage ] PreviousPage 마스터페이지 컨트롤러에 접근 (0) | 2009.05.20 |
Creating a modular application using Prism V2 - Screencast 1/4 : Creating a shell and modules (0) | 2009.05.12 |
SyntaxHighlighter for Windows Live Writer (0) | 2009.04.30 |
[ setInterval ] 일정시간 반복 작업하기 (0) | 2009.04.07 |
Free Code MD5 사용법 및 암호화파일 (0) | 2009.01.09 |
무료 챠트 컨트롤 New ASP.NET Charting Control (0) | 2009.01.08 |