aardio 文档

fsys.openXml.editor 库模块帮助文档

fsys.openXml.editor 成员列表 #

现有 Office Open XML 包的受控替换与另存;不重建未知内容。

fsys.openXml.editor.open() #

返回对象:openXmlEditorObject

fsys.openXml.editor.open(path,options) #

打开编辑会话;输入只读,含数字签名的包拒绝。读取限额同 open;失败 null,err。

openXmlEditorObject 成员列表 #

openXmlEditorObject.applyParts(parts) #

原子新增/替换/删除部件;{name,data,contentType} 新增时须指定内容类型,{name,remove=true} 删除。
自动更新内容类型;不自动维护部件关系或语义,不允许删除主文档/包根关系。全部校验后提交内存;失败无部分修改。

openXmlEditorObject.changedParts() #

返回显式改动的部件名称数组。

openXmlEditorObject.close() #

关闭源 ZIP,可以重复调用;之后不再读写。

openXmlEditorObject.getContentType(name) #

取得现有部件内容类型。

openXmlEditorObject.getMainPart() #

定位原包主文档。

openXmlEditorObject.getRelationships(sourcePart="字符串参数") #

读取当前关系;内部目标须存在,外部不访问。

openXmlEditorObject.listParts() #

当前现有部件清单;返回普通表数组。

openXmlEditorObject.path #

源包完整路径。

openXmlEditorObject.readPart(name) #

优先读取修改后的数据,未修改时读取原始部件并校验 CRC。

openXmlEditorObject.readXml() #

返回对象:msXmlNodeObject

openXmlEditorObject.readXml(name) #

返回当前部件的独立 MSXML DOM;修改后须显式 setXml,不会自动写回。

openXmlEditorObject.save(outputPath,options) #

另存新包,默认不覆盖;即使 overwrite=true 也禁止覆盖源件/可识别别名。
未修改部件的解压内容保持原字节,逐件 CRC 检查并重新压缩,不要求 ZIP 容器字节一致。
失败不提交半成品,成功返回完整路径;不是压缩数据 raw-copy,无限大文件不受支持。

openXmlEditorObject.setPart(name,data) #

替换现有部件字节串,不自动新增类型/关系;成功 true,失败 null,err。

openXmlEditorObject.setParts(parts) #

批量替换现有部件;每项 name,data;先全部校验再提交内存修改,失败不部分修改。buffer 按当前字节复制。

openXmlEditorObject.setXml(name,node) #

UTF-8 序列化 MSXML 文档根节点并替换现有部件;失败 null,err。

Markdown 格式