2011-03-21 13 views
0

我使用C#4.0和Open XML SDK 2.0,用於訪問字file.For的是,現在我想text.If段落包含我的文字,然後檢索包含文本段落檢索基於給定的一個段落...如何檢索使用的Open XML和C#4.0中的Word文件的基於內容的段落?

例如: 給定的字是:TEST

檢索包含單詞「TEST」

的段落我想要搜索的給定詞在paragraph.If找到任何匹配的話,我想以顯示methods.If匹配沒有找到,沒必要弄的段落。

我該怎麼辦?

回答

4

一個字文檔的主要內容被存儲在所述主體元件。 在最簡單的層次,段落可以通過對文檔進行LINQ查詢定位:

using(WordprocessingDocument document = WordprocessingDocument.Open(documentStream, true)){ 
    foreach(Paragraph p in document.MainDocumentPart.Document.Body.Descendants<Paragraph>().Where<Paragraph>(p => p.InnerText.Equals("SOME TEXT")){ 
     // Do something with the Paragraphs. 
    } 
} 

不過,我想提醒的是,問題比這更復雜一點。由於根據每一段可以有包含一串字多於一個執行命令(本質上是一個句子)。這是很可能的是,當用戶輸入單詞「SOME TEXT」還包含其他運行。

但這應該能夠指出你在正確的方向。

相關問題