2010-08-11 4 views
5

StreamReader를 사용하여 읽고 자하는 URI에 파일이 있습니다. 이것은 File.OpenText가 URI 경로를 지원하지 않기 때문에 분명히 문제가됩니다. 이 파일은 html이 들어있는 txt 파일입니다. 나는이 HTML 조각을 사용하는 여러 웹 페이지를 가지고 있으므로 txt 파일에 넣었고 페이지가로드 될 때 페이지로 읽는 중입니다 (파일 시스템에 파일을 넣을 때 작동하도록 할 수 있음). 비즈니스 사용자가 액세스 할 수 있도록 문서 저장소에 온라인으로 저장해야 함). iframe 사용을 피하려고합니다. URI 형식으로 StreamReader를 사용하는 방법이 있습니까? 그렇지 않다면, C#을 사용하여 html의 txt 파일을 읽는 다른 옵션은 무엇입니까? 이것이 최적이 아니라면 누군가가 더 나은 접근 방법을 제안 할 수 있습니까?StreamReader를 사용하여 URI에서 파일을 읽는 방법은 무엇입니까?

답변

10

당신은 당신의 자격 증명을 설정하는 것을 잊지 마세요 프록시 뒤에있는 경우

WebRequest request=WebRequest.Create(url); 
    request.Timeout=30*60*1000; 
    request.UseDefaultCredentials=true; 
    request.Proxy.Credentials=request.Credentials; 
    WebResponse response=(WebResponse)request.GetResponse(); 
    using (Stream s=response.GetResponseStream()) 
    ... 
17

StreamReader을 사용하기위한 특정 요구 사항이 있습니까?

var webClient = new WebClient(); 
string readHtml = webClient.DownloadString("your_file_path_url"); 
13

당신은 HttpWebRequestClass, 또는 WebClient를 사용하여 시도 할 수 있습니다 :이없는 한, 당신은 WebClient 클래스를 사용할 수 있습니다. 약간 복잡한 웹 요청 예제가 있습니다. 그것은 웹 클라이언트를 통해 장점은 당신에게 요청이 어떻게 만들어 지는지를 세밀하게 제어 할 수있다이다 :

HttpWebRequest httpRequest = (HttpWebRequest) WebRequest.Create(lcUrl); 

httpRequest.Timeout = 10000;  // 10 secs 
httpRequest.UserAgent = "Code Sample Web Client"; 

HttpWebResponse webResponse = (HttpWebResponse) httpRequest.GetResponse(); 
StreamReader responseStream = new StreamReader(webResponse.GetResponseStream()); 

string content = responseStream.ReadToEnd(); 
관련 문제