1.2 KiB
1.2 KiB
OfficeXml
说明
将docx、pptx、xlsx等文件中的xml转为tsl对象
<w:p w14:paraId="6E3ED3BE" w14:textId="77777777" w:rsidR="00C57A1E"
w:rsidRDefault="00C57A1E" w:rsidP="00C27AE9">
<w:pPr>
<w:jc w:val="left" />
</w:pPr>
<w:r>
<w:rPr>
<w:rFonts w:hint="eastAsia" />
</w:rPr>
<w:t>最小申购、赎回单位</w:t>
</w:r>
<w:r>
<w:rPr>
<w:rFonts w:hint="eastAsia" />
</w:rPr>
<w:t>(份)</w:t>
</w:r>
</w:p>
上述是一个docx中的段落的xml,序列化为tsl过程如下
namespace "DOCX" // 设置命名空间为DOCX
p := new P(); // 创建一个P对象(段落w:p)
p.Init(node); // 假设node节点是上面的xml指向的Node对象
p.Deserialize(); // 将node对象的xml序列化到tsl对象
// 序列化完毕后,可直接对应取值
echo p.PPr.Jc.Val; // 输出:left
// 在获取存在多个节点的对象时,比如上述的w:r对象是复数的,则需要通过Rs()获取
// 直接调用Rs()会获取所有的R对象,加上索引会获取第N+1个
echo p.Rs(1).T.Text; // 输出:(份)
部署
将此文件夹部署到tsl解释器下的funcext即可