[英]Split html string to page
在我的asp.net項目中,我需要向用戶顯示大文檔。 因為文件有很多文字,我需要使用分頁。 每頁應包含約5000個符號。 我想通過邏輯標記(例如<br/>
nbsp
space
拆分頁面。
最好的方法是什么?
謝謝
最簡單的方法是為String
創建擴展方法
public static IEnumerable<string> GetPages(this string text,
int charsPerPage, string breakChar)
{
int count = 0;
int start = 0;
while (count < text.Length)
{
count = Math.Min(text.Length, count + charsPerPage);
if (count == text.Length)
{
yield return text.Substring(start, count - start);
}
else
{
var nextBreak = text.IndexOf(breakChar, count);
if (nextBreak == -1)
{
yield return text.Substring(start, count - start);
start = count + breakChar.Length;
}
else
{
yield return text.Substring(start, nextBreak - start);
start = nextBreak + breakChar.Length;
}
}
}
}
這可能無法正常工作,因為我沒有正確測試過-但您知道了
你可以這樣使用
var pages = text.GetPages(5000, "<br/>");
最簡單的方法是,如果每個文檔的每一頁只是數據庫中的一條記錄,而該文檔記錄作為主記錄可以將它們保持在一起。 但是,在不知道文檔結構的情況下,很難判斷這樣的事情是否可行。 那么,大文件...它們是什么? PFD文件? Word文件? 還有嗎 是否可以將它們拆分為某些數據庫結構的頁面?
您可以在http://splity.sourceforge.net/搜索HTML分割器,例如一個。
頁面在HTML中確實沒有任何意義。 瀏覽器可以是從27英寸全屏高分辨率顯示器到手機(甚至是80x25的舊字符顯示器)的任何地方。一種尺寸肯定不能滿足所有需求。
如果您真的很關心頁面格式設置,那么PDF是您的最佳選擇。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.