2016-06-26 21 views
1

へのStreamReaderを変換します。 GetHTTPRequest関数は、pdf urlを取得し、pdf urlストリーム文字列を返します。 このストリームをpdfファイルに変換する必要があります。 私のコードは:は、私は私のサーバー上に保存し、その後、バックpdfファイルにPDFストリームを変換しようとしていますバックのpdf

public ActionResult Html(string strUrl) 
    { 
     string xhr; 
     xhr = GetHTTPRequest(strUrl, "GET"); 
     // make pdf file fron xhr 
     return View("Index"); 

    } 

    [ChildActionOnly] 
    public static string GetHTTPRequest(string RequestUrl, string RequestMethod) 
    { 
     try 
     { 
      HttpWebRequest r = (HttpWebRequest)WebRequest.Create(RequestUrl); 
      r.Method = RequestMethod; 
      HttpWebResponse res = (HttpWebResponse)r.GetResponse(); 
      Stream sr = res.GetResponseStream(); 
      StreamReader sre = new StreamReader(sr); 

      string s = sre.ReadToEnd(); 

      return s; 
     } 
     catch (Exception) 
     { 

      return string.Empty; 
     } 
    } 

これは、XHRは含まれていたものからわずか1行である:

「%PDF-1.3 \ nは%쏢\ n5は0 OBJ \ nは<> \ nstream \ NX \キロボルトDBrq \ R} _4U [\nTҮU〜BIさh> glnNY { . 〜 33 ; h 뷶 ͭ ͭ[[[[ e ll \ m \b T F V n 6h嫍Hk l R O6ô3 7O5 : . i< : 3 S j V O \b 〜& \rS93lѭQzvcF)\ rgmvZ \ {I Bq7^xK7UP?Z>] F \ b1Xec/4ji /К&# EJF)のgD \ V)_ \ R | XSEcu \ nILzH | ZLawO \ AF^m6NzS_lb $ Vxを\ rBVG_ 44 v w 4J Q z 7 刭 + a | 7 Z & QLsEct뜁)adӷ2inSU-\ A \fā4'v1wֽ ) S0 2M 〜 S ; Ԩ2 \ a 'K 0[\ "{ FF5 2 ٱJ [ ӑ F  3 X s '\b9 [ & Et A\ " N )7 = p T v! q " H Mi 、 TA P tV {] V =z \rV T o c s [w *i g R EZ Λ.JQ} \ r: w) Ȕڣ %%%% i X 3d P;%=r [email protected] \ he < IAv \a D[] 7X ! \ B @ BA \ BT。Կ、\ n)が1V \ 0Nz $Pȡの%\ $ A5に

誰かがいくつかを入れてくださいすることができそれに光を当て、私のためにそれを解決する? 私は以前にlibaryを使ったことがありません。

ありがとうございました。

答えて

3

PDFは、バイナリファイル形式です。それは意味をなさない文字列を使用しないでください。あなたがやっていることは、NotePadでpdfファイルを開こうとすることと同じです。 pdfファイルをファイルとして保存する必要があります。

これは、ファイルをダウンロードする方法をです。

string resourceUrl = "http://www.google.com/file.pdf"; 
string fileName = downloadedFile.pdf; 
WebClient myWebClient = new WebClient(); 

myWebClient.DownloadFile(resourceUrl,fileName); 

file.pdfを文字列として読み込む必要がある場合は、別の問題です。 pdfパーサを探す必要があります。 iTextSharpはスタートのための悪い選択ではありません。

+0

実際、あなたのソリューションは私のサーバーにファイルをダウンロードしています。なぜなら、これは私が最初に必要だったものだからです。 StreamReaderを私の仕事の誰かからの推奨として使用しましたが、これは悪い解決策です。 ありがとう – barak

+0

@barak - あなたの問題を解決する場合は、質問を閉じて回答を選択してください - [SO FAQ](http://stackoverflow.com/help/someone-answers) – pijemcolu

関連する問題