c#-4.0 - 如何在 C#4.0 中使用 Microsoft.Office.Interop.Word 检测 Word 文档中的空段落?

标签 c#-4.0 ms-word interop office-interop

我想使用 Microsoft.Office.Interop.Word 检测 Word 文档中的空段落。 假设,如果我的word文档有一些空段落,那么

假设第 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文档中检测到空段落。

有没有办法获取空段落列表?

请指导我摆脱这个问题......

最佳答案

首先,如果您还想在这些页眉/页脚中查找空段落,则可能需要遍历所有部分的所有页眉和页脚。

其次,这样的事情应该有效

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 个字符长,而不仅仅是一个。

你还可以做类似的事情

p.Range.Sentences.Count > 0

p.Range.Characters.Count > 0

但这些技术通常比检查开始和结束位置慢。

关于c#-4.0 - 如何在 C#4.0 中使用 Microsoft.Office.Interop.Word 检测 Word 文档中的空段落?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6215552/

相关文章:

winforms - 在 WinForms 中验证用户身份(与 ASP.Net 无关)

vba - 事件 - 文档已编辑

delphi - 如何使用参数调用Word宏

c# - 将 NULL 传递给 COM 接口(interface)方法的 ref/out 参数

c# - 使用互操作在 excel 中设置数字格式

java - 将数据从 Java 程序传递到 Python 程序并取回结果

c#-4.0 - 导出 Excel : Avoid stripping the leading zeros

c# - 将代码中的数据库表首先转换为模型的最佳方法

c# - 如何在 C# 中创建 Word 文档?

c# - 带有 Entity Framework 的 MVC 3 和编辑多个对象导致 "referential integrity constraint violation"