asp.net在線預覽txt文件(簡單實現)


最近在做文件的在線預覽,發現txt文件沒有一個較好的方法去實現,想了想可能是比較簡單就直接在后台輸出了

txt文件

 

1.第一次后台直接輸出

效果如我所料

后台的一些符合和html符號都沒有輸出

2.想到用HTML <pre> 標簽實現

效果:

不錯,基本格式都已經有了,但html仍不是我想要的結果

3.考慮替換想html字符

注:只需要替換一個字符即可,我這里替換<

效果:

恩不錯,就是這個效果

 

源碼

 1         /// <summary>
 2         /// 初始化頁面
 3         /// </summary>
 4         /// <param name="fileUrl">文件路徑</param>
 5         public void InitPage(string fileUrl)
 6         {
 7             //獲取文件絕對路徑
 8             string fileUrl_jd = System.Web.HttpContext.Current.Server.MapPath(fileUrl);
 9             string outData = "";
10             if (!File.Exists(fileUrl_jd))
11             {
12                 return;
13             }
14 
15             //存在則讀取
16 
17             StreamReader sr = new StreamReader(fileUrl_jd, System.Text.Encoding.Default);
18             outData = sr.ReadToEnd();
19             //關閉流
20             sr.Close();
21             //輸出(采用PRE標簽來格式化文本,轉換原文本中的html字符,只需要轉換一個字符即可,這里我們轉換<字符,就可以顯示原格式和原文本內容)
22             Response.Write(string.Format("<PRE class='txt-content'>{0}</PRE>", outData.Replace("<", "&lt;")));
23         }
源碼

簡單實現~

小技巧:加上此css后,pre標簽中的內容會自動換行,不會出現滾動條

/*使內容自動換行*/
 pre {
    white-space: pre-wrap;
    word-wrap: break-word;
 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM