利用C#實現(xiàn)Word文檔多維度信息統(tǒng)計
在文檔處理場景中,自動化統(tǒng)計Word文檔的字數(shù)、字符數(shù)、段落數(shù)、行數(shù)和頁數(shù)是常見的需求。本文將介紹如何使用免費的 Free Spire.Doc for .NET 庫 快速實現(xiàn)這些功能,無需Microsoft Word依賴。
1. 前期準備
首先需要在項目中引入 Spire.Doc 組件。你可以通過 NuGet 包管理器來完成安裝,具體操作:在 Visual Studio 的 “工具"→"NuGet 包管理器"→"管理解決方案的 NuGet 程序包” 中搜索 “Spire.Doc” 并安裝。
或者在程序包管理器控制臺中執(zhí)行以下命令:
Install-Package Spire.Doc.Free
2. 核心實現(xiàn)代碼
下面是實現(xiàn) Word 文檔統(tǒng)計功能的完整代碼:
using Spire.Doc;
using System.IO;
using System.Text;
namespace CountWordsCharactersEtcInWord
{
internal class Program
{
static void Main(string[] args)
{
// 加載Word文檔
Document document = new Document();
document.LoadFromFile("溯源碼.docx");
// 獲取 BuiltinDocumentProperties 對象
BuiltinDocumentProperties properties = document.BuiltinDocumentProperties;
// 獲取文檔中的字數(shù)、字符數(shù)、段落數(shù)、行數(shù)和頁數(shù)
int wordCount = properties.WordCount;
int charCount = properties.CharCount;
int charCountwithSpace = properties.CharCountWithSpace;
int paraCount = properties.ParagraphCount;
int lineCount = properties.LinesCount;
int pageCount = properties.PageCount;
// 將獲取結果添加到 StringBuilder
StringBuilder sb = new StringBuilder();
sb.AppendLine("字數(shù): " + wordCount);
sb.AppendLine("字符數(shù): " + charCount);
sb.AppendLine("字符數(shù)(計空格): " + charCountwithSpace);
sb.AppendLine("段落數(shù): " + paraCount);
sb.AppendLine("行數(shù): " + lineCount);
sb.AppendLine("頁數(shù): " + pageCount);
// 導出為txt文檔
File.WriteAllText("統(tǒng)計結果.txt", sb.ToString());
document.Close();
}
}
}
輸出結果:

3. 代碼功能解析
文檔加載:借助Document類的LoadFromFile方法來加載 Word 文檔。
文檔屬性獲取:BuiltinDocumentProperties 類提供了對 Word 文檔內(nèi)置屬性的訪問接口,利用它可以直接獲取文檔的各種統(tǒng)計信息。
核心統(tǒng)計數(shù)據(jù)獲取
這里一次性獲取了五項關鍵統(tǒng)計數(shù)據(jù):
WordCount:統(tǒng)計文檔中的單詞數(shù)量CharCount:統(tǒng)計文檔中的字符總數(shù)(不包含空格)CharCountWithSpace:統(tǒng)計文檔中的字符總數(shù)(包含空格)ParagraphCount:統(tǒng)計文檔中的段落數(shù)量LinesCount:統(tǒng)計文檔中的行數(shù)PageCount:統(tǒng)計文檔的頁數(shù)
結果保存:使用 StringBuilder 高效構建結果文本,然后將統(tǒng)計結果保存為 txt 文件,方便后續(xù)查看與分析。
4. 批量處理功能
可以結合 Directory 類實現(xiàn)對文件夾中多個 Word 文檔的批量統(tǒng)計:
string[] files = Directory.GetFiles(@"D:\Word文檔", "*.docx");
foreach(string file in files)
{
// 加載并統(tǒng)計每個文檔
}
5. 注意事項
Free Spire.Doc 免費版對文檔處理有一定限制,如最多500 個段落,25 個表格。
統(tǒng)計結果是基于 Word 文檔內(nèi)置屬性,這些屬性通常在文檔編輯過程中自動更新,但在某些特殊情況下可能需要手動更新文檔屬性。
對于包含大量表格、圖表、或特殊符號的復雜文檔,統(tǒng)計結果可能會有細微偏差。
6. 結論
通過上述代碼和方法,我們可以快速實現(xiàn) Word 文檔的自動化統(tǒng)計分析,為文檔管理、內(nèi)容評估等工作提供有力支持。無論是個人用戶處理少量文檔,還是企業(yè)級應用的批量文檔處理,這種方法都具有很高的實用價值。
到此這篇關于利用C#實現(xiàn)Word文檔多維度信息統(tǒng)計的文章就介紹到這了,更多相關C#統(tǒng)計Word信息內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

