我需要在 XML 文件中放置一个变量
I need to put a variable inside an XML file
在XML文件中,有引用图片的节点,而且数量很多!我想做的是在文档顶部创建一个变量来指定驱动器和路径 (C:\IMAGES),这样如果我想更改路径或驱动器或两者,那么我只需要在一条线。但是,我尝试了不同的格式,但无法使其在节点内工作。
这是现在的样子:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<CustSection xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<FileVersion IncrementalVersion="3" MajorVersion="0" MinorVersion="1" UserVersion="0"/>
<Header>...
</Header>
<MenuMacro UID="ID_EPSOutput">
<Macro type="Any">
<Revision MajorVersion="16" MinorVersion="2" UserVersion="1"/>
<Name UID="XLS_1309" xlate="true">Create EPS output for IOC</Name>
<Command>-vbarun acadproject.main.Run_EPSOutput </Command>
<SmallImage Name="F:\COMMON\CAREM-B18\Images\EPS.bmp"/>
<LargeImage Name="F:\COMMON\CAREM-B18\Images\EPS.bmp"/>
</Macro>
</MenuMacro>
我想简化<SmallImage Name="F:\COMMON\CAREM-B18\Images\EPS.bmp"/>
像这样:
<SmallImage Name="{$path}EPS.bmp"/>
Entities 对此很有效。您可以将 path
声明为 DTD 中的实体:
<!DOCTYPE CustSection [<!ENTITY path "F:\COMMON\CAREM-B18\Images\">]>
然后将 XML 中的 path
实体引用为 &path;
。
应用于您的文档:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!DOCTYPE CustSection [<!ENTITY path "F:\COMMON\CAREM-B18\Images\">]>
<CustSection xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<FileVersion IncrementalVersion="3" MajorVersion="0" MinorVersion="1" UserVersion="0"/>
<Header>...
</Header>
<MenuMacro UID="ID_EPSOutput">
<Macro type="Any">
<Revision MajorVersion="16" MinorVersion="2" UserVersion="1"/>
<Name UID="XLS_1309" xlate="true">Create EPS output for IOC</Name>
<Command>-vbarun acadproject.main.Run_EPSOutput </Command>
<SmallImage Name="&path;EPS.bmp"/>
<LargeImage Name="&path;EPS.bmp"/>
</Macro>
</MenuMacro>
</CustSection>
在XML文件中,有引用图片的节点,而且数量很多!我想做的是在文档顶部创建一个变量来指定驱动器和路径 (C:\IMAGES),这样如果我想更改路径或驱动器或两者,那么我只需要在一条线。但是,我尝试了不同的格式,但无法使其在节点内工作。
这是现在的样子:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<CustSection xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<FileVersion IncrementalVersion="3" MajorVersion="0" MinorVersion="1" UserVersion="0"/>
<Header>...
</Header>
<MenuMacro UID="ID_EPSOutput">
<Macro type="Any">
<Revision MajorVersion="16" MinorVersion="2" UserVersion="1"/>
<Name UID="XLS_1309" xlate="true">Create EPS output for IOC</Name>
<Command>-vbarun acadproject.main.Run_EPSOutput </Command>
<SmallImage Name="F:\COMMON\CAREM-B18\Images\EPS.bmp"/>
<LargeImage Name="F:\COMMON\CAREM-B18\Images\EPS.bmp"/>
</Macro>
</MenuMacro>
我想简化<SmallImage Name="F:\COMMON\CAREM-B18\Images\EPS.bmp"/>
像这样:
<SmallImage Name="{$path}EPS.bmp"/>
Entities 对此很有效。您可以将 path
声明为 DTD 中的实体:
<!DOCTYPE CustSection [<!ENTITY path "F:\COMMON\CAREM-B18\Images\">]>
然后将 XML 中的 path
实体引用为 &path;
。
应用于您的文档:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!DOCTYPE CustSection [<!ENTITY path "F:\COMMON\CAREM-B18\Images\">]>
<CustSection xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<FileVersion IncrementalVersion="3" MajorVersion="0" MinorVersion="1" UserVersion="0"/>
<Header>...
</Header>
<MenuMacro UID="ID_EPSOutput">
<Macro type="Any">
<Revision MajorVersion="16" MinorVersion="2" UserVersion="1"/>
<Name UID="XLS_1309" xlate="true">Create EPS output for IOC</Name>
<Command>-vbarun acadproject.main.Run_EPSOutput </Command>
<SmallImage Name="&path;EPS.bmp"/>
<LargeImage Name="&path;EPS.bmp"/>
</Macro>
</MenuMacro>
</CustSection>