2011-05-24 92 views
0
System.IO.StreamReader sr = new System.IO.StreamReader(Server.MapPath(strheadlinesid1)); 

    string line; 

    while (sr.Peek() != -1) 
    { 
     line = sr.ReadLine(); 
     Response.Write("<tr>"+"<td>"+ Server.HtmlEncode(line) + "</td>"+"</tr>"); 
    } 

我用上面的代碼來讀取。但這一個文件只被正確讀取.TXT文件(不讀.DOC,DOCX和正確的.rtf)文件。任何人都可以告訴如何在Web瀏覽器中閱讀.pdf文件,如在新選項卡中的Adobe Reader中打開。感謝您無法讀取正確使用asp.net C#

+3

不,*不會*閱讀doc和docx等文件。那些是二進制文件,這只是讀純文本。關於PDF的含義並不十分清楚,要麼...... – 2011-05-24 08:44:09

+0

您是否期望幾行代碼能夠讀取_any_文件格式?最好的辦法可能是直接將瀏覽器指向文件的URL並希望最好。 – 2011-05-24 08:46:32

+0

好的,謝謝你,我正在問一個在網絡瀏覽器上閱讀PDF的方法。 – Naresh 2011-05-24 08:46:53

回答

2

要下載一個PDF文件,調用此代碼的PDF文件:根據用戶的設置對於他們的瀏覽器,它可能會在你想要的新標籤頁中打開。

public static void DownloadFile(string fname, bool forceDownload) 
{ 
    string path = fname; 
    if (fname.StartsWith("~")) 
     path = Server.MapPath(fname); 
    string name = Path.GetFileName(path); 
    string ext = Path.GetExtension(path); 
    string type = ""; 
    // set known types based on file extension 
    if (ext != null) 
    { 
     switch (ext.ToLower()) 
     { 
      case ".htm": 
      case ".html": 
       type = "text/HTML"; 
       break; 

      case ".txt": 
       type = "text/plain"; 
       break; 

      case ".pdf": 
       type = "Application/pdf"; 
       break; 

      case ".doc": 
      case ".rtf": 
       type = "Application/msword"; 
       break; 

      case ".exe": 
       type = "application/octet-stream"; 
       break; 

      case ".zip": 
       type = "application/zip"; 
       break; 
     } 
    } 
    if (forceDownload) 
    { 
     Response.AppendHeader("content-disposition", 
      "attachment; filename=" + name); 
    } 
    if (!string.IsNullOrEmpty(type)) 
     Response.ContentType = type; 
    Response.WriteFile(path); 
    Response.End(); 
} 
+0

謝謝,但它的下載。只有在Web瀏覽器沒有辦法讀取。 – Naresh 2011-05-24 09:15:50

+0

非常感謝,它解決了我的PDF文件的問題。請看看ms-word類型文件是否可能。 – Naresh 2011-05-24 09:18:16

+0

如果您想要爲word文檔執行MIME類型,請使用google mime ms-word,您可以修改/添加到這些擴展名的switch語句。 – 2011-05-24 09:26:01

0

您的方法會讀取文件的原始內容。 Txt文件顯示正確,因爲它們的內容是純文本,doc/rtf/pdf和其他格式將需要專門的控件才能正確顯示它們。