2

我想要实现的是强制 MS Word 在将 .doc 或 .rtf 文件保存为 .xml 时不拆分特定字符串。例如,现在从类似的东西:

 Something: ***TABLE_NAME.COLUMN_NAME***

或者

 Something: AAATABLE_NAME.COLUMN_NAMEBBB

或我得到的任何类似的东西:

<w:p wsp:rsidR="00537583" wsp:rsidRDefault="00AF6BDF" wsp:rsidP="00537583">
    <w:pPr>
        <w:pStyle w:val="Default"/>
        <w:jc w:val="both"/>
        <w:rPr>
            <w:sz w:val="23"/>
            <w:sz-cs w:val="23"/>
        </w:rPr>
    </w:pPr>
    <w:r>
        <w:rPr>
            <w:sz w:val="23"/>
            <w:sz-cs w:val="23"/>
        </w:rPr>
        <w:t>Something: AAA</w:t>
    </w:r>
    <w:r wsp:rsidR="00537583">
        <w:rPr>
            <w:sz w:val="23"/>
            <w:sz-cs w:val="23"/>
        </w:rPr>
        <w:t>TABLE_NAME.</w:t>
    </w:r>
    <w:r wsp:rsidR="00537583" wsp:rsidRPr="00537583">
        <w:rPr>
            <w:sz w:val="23"/>
            <w:sz-cs w:val="23"/>
        </w:rPr>
        <w:t> COLUMN_NAME</w:t>
    </w:r>
    <w:r wsp:rsidR="00537583">
        <w:rPr>
            <w:sz w:val="23"/>
            <w:sz-cs w:val="23"/>
        </w:rPr>
        <w:t>BBB</w:t>
    </w:r>
</w:p>

我想得到的是例如:

 <w:p wsp:rsidR="00537583" wsp:rsidRDefault="00AF6BDF" wsp:rsidP="00537583">
    <w:pPr>
        <w:pStyle w:val="Default"/>
        <w:jc w:val="both"/>
        <w:rPr>
            <w:sz w:val="23"/>
            <w:sz-cs w:val="23"/>
        </w:rPr>
    </w:pPr>
    <w:r>
        <w:rPr>
            <w:sz w:val="23"/>
            <w:sz-cs w:val="23"/>
        </w:rPr>
        <w:t>Something: AAATABLE_NAME.COLUMN_NAMEBBB</w:t>
    </w:r>
</w:p>

对于任何有助于绕过此问题的想法,我将不胜感激。

4

2 回答 2

3

如果您无法直接将其导出,那么您会想到两个选项:

  1. 使用 VSTO 创建插件(链接在这里

  2. 创建一个XSLT 模板以适当地重新格式化 XML

于 2009-10-19T15:44:38.773 回答
2

Word 有一个选项来控制 RSID 条目是否与文档一起保存。这是一个隐藏的应用程序选项,只能通过 Word 对象模型访问。

为防止生成这些 id,您可以例如打开宏编辑器 (Alt+F11) 并在即时窗口中执行以下代码:

Application.Options.StoreRSIDOnSave = False

如果没有 RSID,所有具有相同格式的文本都将包含在一次运行中(我认为这是您想要的)。

Word 使用 RSID自动合并文档;它们不包含保存文档布局所需的基本信息,因此保存是可选的(除非您需要能够合并文档)。

于 2009-10-19T16:08:39.520 回答