2012-09-03 5 views
18

이 URL을 가지고 있습니다 : URL from Google이 URL에서 파일의 콘텐츠를 가져 오는 방법은 무엇입니까?

새 탭에서 링크를 열면 브라우저에서 강제로 다운로드합니다. 다운로드 후 "s"라는 텍스트 파일을 얻습니다. 하지만이 URL에 C# 액세스를 사용하여 텍스트를 가져오고 컴퓨터에 파일로 저장하지 마십시오. 이것을 할 방법이 있습니까?

+0

당신이 C# 코드를 통해이 작업을 수행 할 수 있습니까? – shenku

+0

가능한 [C#의 URL에서 파일을 다운로드하는 방법]의 복제본 (http://stackoverflow.com/questions/307688/how-to-download-a-file-from-a-url-in-c) 또는 [URL에서 문자열로 파일 다운로드] (http://stackoverflow.com/questions/3231969/download-file-from-url-to-a-string). – adrianbanks

+0

파일을 다운로드하고 읽고 삭제하십시오. –

답변

33
var webRequest = WebRequest.Create(@"http://yourUrl"); 

using (var response = webRequest.GetResponse()) 
using(var content = response.GetResponseStream()) 
using(var reader = new StreamReader(content)){ 
    var strContent = reader.ReadToEnd(); 
} 

이렇게하면 요청 내용이 strContent에 배치됩니다.

또는 adrianbanks

단순히 WebClient.DownloadString()

+11

['WebClient.DownloadString()'] (http://msdn.microsoft.com/en-us/library/system.net.webclient.downloadstring.aspx)을 사용하면 어떤 문제가 발생합니까? 코드 줄? – adrianbanks

+0

Nothing ... WebRequest를 사용하는 데 너무 익숙해졌습니다. 단 하나의 리소스 만 얻거나 헤더를 처리해야하기 때문입니다. 솔직히 말하면 당신이 지금까지 언급하기 전 까진 내 머리에 튀어 나오지도 않았어. – Josh

+0

@adrianbanks - 하나는 PCL에서 작동한다고 생각하지 않습니다. – jbyrd

26

이 시도 사용 아래에 언급 :

var url = "https://www.google.com.vn/s?hl=vi&gs_nf=1&tok=i-GIkt7KnVMbpwUBAkCCdA&cp=5&gs_id=n&xhr=t&q=thanh&pf=p&safe=off&output=search&sclient=psy-ab&oq=&gs_l=&pbx=1&bav=on.2,or.r_gc.r_pw.r_cp.r_qf.&fp=be3c25b6da637b79&biw=1366&bih=362&tch=1&ech=5&psi=8_pDUNWHFsbYrQeF5IDIDg.1346632409892.1"; 

var textFromFile = (new WebClient()).DownloadString(url); 
+0

'WebClient' 객체를 정리하지 않는 것을 좋아합니다. 항상 블록을 사용하는 것을 좋아합니다. – Wobbles

관련 문제