无法将 .doc 另存为 .xml

发布于 2024-08-08 03:30:29 字数 2096 浏览 4 评论 0原文

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

 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>

我将感激任何有助于绕过这个问题的想法。

What I'd like to achieve is to force MS Word not to split specific strings when saving .doc or .rtf file as .xml.
For example, now from something like:

 Something: ***TABLE_NAME.COLUMN_NAME***

or

 Something: AAATABLE_NAME.COLUMN_NAMEBBB

or anything similar I get:

<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>

and what I'd like to get is e.g.:

 <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>

I'll be grateful for any ideas that will help to bypass this.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

甜扑 2024-08-15 03:30:29

如果您无法直接按照需要导出,我会想到两个选项:

  1. 使用 VSTO 创建插件 (链接此处

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

Two options spring to mind, if you can't get it to export as you want directly:

  1. Create a plugin using VSTO (Link here)

  2. Create an XSLT Template to reformat the XML appropriately

嗳卜坏 2024-08-15 03:30:29

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

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

Application.Options.StoreRSIDOnSave = False

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

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

Word has an option to control whethr RSID entries are saved with a document. This is a a hidden application option only accessible via the Word object model.

To prevent that those ids are generated you can e.g. open the macro editor (Alt+F11) and execute the following code in the immediate window:

Application.Options.StoreRSIDOnSave = False

Without RSIDs all text having the same formatting will be contained in a single run (I think this is what you want to have).

The RSIDs are used by Word to automatically merge documents; they don't contain essential information needed for preserving a documents layout so saving is optional (unless you need to be able to merge documents).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文