Tôi đang viết một chương trình cần tải xuống tệp .exe
từ một trang web và sau đó lưu tệp đó vào ổ cứng. Các .exe
được lưu trữ trên trang web của tôi và đó là url là như sau (nó không phải là uri thực chỉ là một tôi đã bù đắp lại mục đích của câu hỏi này):Cách sử dụng HttpWebRequest/Response để tải xuống tệp nhị phân (.exe) từ máy chủ web?
http://www.mysite.com/calc.exe
Sau nhiều tìm kiếm web và dò dẫm qua ví dụ ở đây là mã Tôi đã đưa ra cho đến nay:
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(http://www.mysite.com/calc.exe);
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
Stream responseStream = webResponse.GetResponseStream();
StreamReader streamReader = new StreamReader(responseStream);
string s = streamReader.ReadToEnd();
Như bạn có thể thấy tôi đang sử dụng lớp StreamReader
để đọc dữ liệu. Sau khi gọi ReadToEnd
trình đọc luồng có chứa nội dung (nhị phân) của tệp .exe của tôi không? Tôi có thể viết nội dung của StreamReader
vào một tệp (có tên calc.exe) và tôi sẽ tải xuống thành công tệp .exe không?
Tôi tự hỏi tại sao StreamReader
ReadToEnd
trả về một chuỗi. Trong trường hợp của tôi chuỗi này sẽ là nội dung nhị phân của calc.exe?
Xin cảm ơn! Sẽ kiểm tra WebClient.DownloadFile ngay bây giờ! –
WebClient DownloadFile đã hoạt động và chỉ có 3 dòng mã! –