openxml 相关问题

有关通过直接处理zip包中包含的XML文件或通过Microsoft Office Open XML SDK读取和写入Microsoft Office Open XML文件的问题。

使用 ClosedXml 将 XML 文档转换为 OpenXML 格式

我有一个 OpenXML 格式的 XmlDocument。看起来像这样: ...

回答 1 投票 0

如何使用 Open XML SDK 删除 Word 和 PowerPoint 中的所有嵌入对象?

我正在尝试使用 openxml SDK 从 Word 和 PowerPoint 文件中删除所有嵌入对象。我是 Open XML 新手,不确定我这样做是否正确。下面是我的代码。我的意图...

回答 3 投票 0

为什么 Java 的 XPath 求值器在查询 OpenXML 文件时需要匿名名称空间的自定义前缀?

我正在尝试了解 XPath 评估如何适用于 OpenXML 文件,特别是以下代码片段中的 Excel(为简洁起见,我删除了不相关的节点): 我正在尝试了解 XPath 评估如何适用于 OpenXML 文件,特别是以下代码片段中的 Excel(为简洁起见,我删除了不相关的节点): <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x15 xr xr6 xr10 xr2" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr6="http://schemas.microsoft.com/office/spreadsheetml/2016/revision6" xmlns:xr10="http://schemas.microsoft.com/office/spreadsheetml/2016/revision10" xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2"> <!-- [..] --> <sheets> <sheet name="Sheet-One" sheetId="1" r:id="rId1" /> <sheet name="Sheet-Two" sheetId="3" r:id="rId2" /> <sheet name="Sheet-Three" sheetId="4" r:id="rId3" /> </sheets> <!-- [..] --> </workbook> 当我使用没有自定义前缀的 XPath(并且没有 NamespeceContext 和禁用行 xp.namespaceContext = nc)查询此 XML 时,它找不到节点,即使 XPath-Tester 找到了。 //val xpath = "/workbook/sheets/sheet" // <-- doesn't work val xpath = "/xx:workbook/xx:sheets/xx:sheet" val xp = XPathFactory.newInstance().newXPath() val nc = NamespaceContextImpl() nc.addNamespace("xx", "http://schemas.openxmlformats.org/spreadsheetml/2006/main") xp.namespaceContext = nc val sheetNodes = xp.compile(xpath).evaluate(document, XPathConstants.NODESET) as NodeList 所以,我想知道为什么一种工具没有它就可以工作,而另一种则不能? 我有一个理论,为什么可能需要前缀,但我无法确认,这是因为 workbook 元素指定没有前缀的 xmlns 命名空间,因此它会自动应用于所有其他节点,但它是您的前缀在Java中使用XPath查询真的正确吗? 你的问题读起来更像是沮丧的呼喊,而不是请求可以得到事实答案的信息。 回应沮丧的呼声,毫无疑问,XPath 中处理名称空间的方式已被证明对许多用户来说是一个很大的可用性问题。不幸的是,虽然每个人都知道这一点,但这是一种随后很难纠正的设计错误。后来的 XPath 版本试图缓解这一问题,但遗憾的是,许多流行的 XPath 库(包括 JDK 默认附带的库)从未实现过 XPath 1.0 之外的任何内容。 大多数语言都有这样的可用性陷阱,你可以从经验中学习。当我处理一项新技术时,我自己的学习风格通常是浏览一本有关该主题的书,一本好的教科书通常会给出足够的警告,帮助你避免此类陷阱。然而,如今,我们中的许多人必须学习的新技术超出了书架上的空间,许多人通过反复试验以及复制和粘贴示例来学习。如果您的学习风格是通过反复试验来学习,那么恐怕您必须接受自己会犯错误,而且其中一些错误并不明显。

回答 1 投票 0

为什么 Java 的 XPath 求值器需要 NamespaceContext 和前缀来查询 OpenXML 文件?

我正在尝试了解 XPath 评估如何适用于 OpenXML 文件,特别是以下代码片段中的 Excel(为简洁起见,我删除了不相关的节点): 我正在尝试了解 XPath 评估如何适用于 OpenXML 文件,特别是以下代码片段中的 Excel(为简洁起见,我删除了不相关的节点): <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x15 xr xr6 xr10 xr2" xmlns:x15="http://schemas.microsoft.com/office/spreadsheetml/2010/11/main" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr6="http://schemas.microsoft.com/office/spreadsheetml/2016/revision6" xmlns:xr10="http://schemas.microsoft.com/office/spreadsheetml/2016/revision10" xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2"> <!-- [..] --> <sheets> <sheet name="Sheet-One" sheetId="1" r:id="rId1" /> <sheet name="Sheet-Two" sheetId="3" r:id="rId2" /> <sheet name="Sheet-Three" sheetId="4" r:id="rId3" /> </sheets> <!-- [..] --> </workbook> 当我使用不带 NamespeceContext(且禁用行 xp.namespaceContext = nc)的 XPath 查询此 XML 时,它找不到节点,即使 XPath-Tester 找到了。 //val xpath = "/workbook/sheets/sheet" // <-- doesn't work val xpath = "/xx:workbook/xx:sheets/xx:sheet" val xp = XPathFactory.newInstance().newXPath() val nc = NamespaceContextImpl() nc.addNamespace("xx", "http://schemas.openxmlformats.org/spreadsheetml/2006/main") xp.namespaceContext = nc val sheetNodes = xp.compile(xpath).evaluate(document, XPathConstants.NODESET) as NodeList 我有一个理论,但我无法确认,这是因为 workbook 元素指定没有前缀的 xmlns 命名空间,因此它会自动应用于所有其他节点。但是,XPath 中所需的 free 前缀 xx(或其他任何内容)是怎么回事?人们如何弄清楚这一点?如果我没有找到NamespaceContexthere我永远不会想出这个。这些技巧从哪里学来的? 你的问题读起来更像是沮丧的呼喊,而不是请求可以得到事实答案的信息。 回应沮丧的呼声,毫无疑问,XPath 中处理名称空间的方式已被证明对许多用户来说是一个很大的可用性问题。不幸的是,虽然每个人都知道这一点,但这是一种随后很难纠正的设计错误。后来的 XPath 版本试图缓解这一问题,但遗憾的是,许多流行的 XPath 库(包括 JDK 默认附带的库)从未实现过 XPath 1.0 之外的任何内容。 大多数语言都有这样的可用性陷阱,你可以从经验中学习。当我处理一项新技术时,我自己的学习风格通常是浏览一本有关该主题的书,一本好的教科书通常会给出足够的警告,帮助你避免此类陷阱。然而,如今,我们中的许多人必须学习的新技术超出了书架上的空间,许多人通过反复试验以及复制和粘贴示例来学习。如果您的学习风格是通过反复试验来学习,那么恐怕您必须接受自己会犯错误,而且其中一些错误并不明显。

回答 1 投票 0

此 Office Open XML 元素使用哪种测量单位

以下元素是图片,可以用PowerPoint解析。我对此感到困惑 测量单位几个小时。 英制公制单位 (EMU)、点、派卡和英寸 ? 分辨率=96 ...

回答 2 投票 0

无法使用 OpenXML XPath 解析 Word 文档中的项目符号点类型

以下 MS Word 文档仅包含两个单独列表的项目符号点,每个列表都封装在一个单元格表格中。 如何使用Word文档的底层document.xml、numberin...

回答 1 投票 0

使用open xml sdk代码,如何调整表格(在ms word文档中)的大小以适应表格内容?

在MS Words中,为了使表格中的列自动适合内容,我们单击表格。在“布局”选项卡上的“单元格大小”组中,单击“自动调整”,然后单击“自动调整内容”。 例如...

回答 1 投票 0

如何在 C# 中使用 OpenXML 更新 Word 文档的目录

我正在 .net core 6.1 应用程序中使用 OpenXML 库创建 Word 文档。一切都很完美并且工作顺利。但完成所有操作后,我需要更新目录,但我

回答 2 投票 0

如何通过DocumentFormat.OpenXml word文档获取更新的字节数组?

我正在尝试获取一个 C# 方法来更新 .docx 文件并返回更新文件的字节数组。我使用 DocumentFormat.OpenXml 进行 .docx 文件处理。原始的字节数组(非up...

回答 0 投票 0

如何更改项目“文件”(存档文件)内的 XML

我的主要目标是只更改项目文件内的 .xml 文件(例如 .docx),所以我的解决方案是将其解压并打包回来,但它不起作用。如果您知道更好的方法或可以指出...

回答 0 投票 0

使用 DocumentFormat.OpenXml 进行 .docx 文件中的文本替换

我正在使用 DocumentFormat.OpenXml 替换 .docx 文件中的文本。遇到了问题,因此开始进行一些调查,以便更深入地了解 DocumentFormat.OpenXml 的工作原理。作为...

回答 0 投票 0

使用 VBA 在 PowerPoint 中创建可分组表格

通过按照 OOXML Hacking: Locking Graphics 的文章将 更改为 ,可以快速启用

回答 1 投票 0

创建可分组表格

通过按照 OOXML Hacking: Locking Graphics 的文章将 更改为 ,可以快速渲染...

回答 0 投票 0

如何使用 json 响应保存文件

response 得到如下的 json: {'additionalErrors':无, '数据':{'contentType':'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', ‘文件’:‘

回答 1 投票 0

如何计算一个形状在word文件中的位置?(openxml)

在word文件中,有一个宽200像素,高175像素的“组”,里面有一条直线。我得到了关于组和线路的信息,我该如何计算

回答 0 投票 0

如何在 OpenXML 中计算形状的位置和大小以在 WPF 中显示,就像在 PPTx 中一样

我在PPTx中有一个简单的形状 我看到并得到了它在 Openxml 中的位置 我去……

回答 1 投票 0

C# Word OpenXml SDK - 添加文本到运行修剪空格

我正在尝试使用 OpenXml SDK 将文本运行添加到 Word 中的现有段落,但每次我这样做时,它最终都会“修剪”我添加的文本。 例如 运行 newRun = newRun();

回答 2 投票 0

Microsoft Excel。最后修改者字段未更新

当用户修改并保存电子表格时,不会设置通过“信息”选项卡访问的“上次修改者”。它显示为“D3I3t3M3”而不是修改者。这……

回答 0 投票 0

使用 xsl 将元素从一个节点复制到另一个节点

我正在使用 xsl 使节点 B 的值引用节点 A 的值。因此,我定义了一个取值 2 的键。然后,我将值传递给 w:c O ...

回答 1 投票 0

将标题添加到 DocumentFormat.OpenXml.Spreadsheet

只想将工作表名称添加到中心标题。 var headerFooter = worksheetPart1.Worksheet.Elements < HeaderFooter>().FirstOrDefault(); 如果(headerFooter == null) 标题...

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.