2011-06-02 83 views
2

我想使用Microsoft.Office.Interop.Word檢測Word文檔中的空白段落。 假設,如果我的word文檔中有一些空段落,然後如何檢測Word文檔中使用Microsoft.Office.Interop.Word C#4.0中的空白段落?

假設第3款是一個空段落...

Microsoft.Office.Interop.Word.Paragraph para = wordDoc.Content.Paragraphs[3]; 
int cSent = para.Range.Sentences.Count; 

for (int j = 1; j <= cSent; j++) 
{ 
Microsoft.Office.Interop.Word.Range sent = para.Range.Sentences[j]; 
MessageBox.Show("Sent lines :" + sent.Text.ToString()); 
} 

然後空段落採取了最後一個非空段落的最後一句。所以,我無法在Word文檔中檢測到空白段落。

有沒有辦法得到空白段列表?

請指引我走出這個問題...

回答

5

嗯,首先,你可能需要通過所有的頭和所有部分的頁腳迭代,如果你也想看看在這些報頭段的空/頁腳。

其次,這樣的事情應該工作

for each p in Doc.Content.Paragraphs 
    if (p.Range.End - p.Range.Start) > 1 then (The paragraph is not empty) 
Next 

您可能需要與「1」的個數玩,因爲我不記得在那裏的Word設置起點和終點,空段落可能是2 chars從頭到尾長,不只是一個。

你也可以做這樣的事情

p.Range.Sentences.Count > 0 

p.Range.Characters.Count > 0 

但這些技術通常不是檢查開始和結束位置較慢。

+0

@Saravanan請不要編輯其他人的答案,但添加評論。 – phihag 2011-06-02 15:55:06

+1

@phihag,stackoverflow支持編輯其他人的答案。如果你不想讓人們編輯答案,那麼你應該使用傳統的論壇。閱讀有關編輯的常見問題。 – 2011-06-03 12:43:01

+0

@Samuell Neff這個評論只是OP被拒絕的編輯的後續行動,他發佈了對編輯的迴應作出的反應(如果內存服務,它甚至以'@ drventure'開頭)。編輯問題糾正錯誤,添加新的細節等等當然很好 – phihag 2011-06-03 17:32:25

相關問題