我想创建一个批处理文件,该文件将根据.DWG文件名搜索文件夹并创建.XML文件。它还会将文件名添加到(2).XML内的不同位置(参见下文)。批处理脚本 - 创建.XML文件 - 基于文件夹中的每个.DWG文件的名称
过程:
- 一个文件夹中包含编号A1.dwg〜A100.dwg(100)图纸文件
- 批处理文件,会发现这些文件名,并创建相应的.XML文件
- 01:在.xml文件(2)线将根据文件名
文件 “A26” XML内容进行编辑项
文件 “A42” XML内容:
<?xml version="1.0" encoding="UTF-8"?>
<File Name="A42"><Version>1</Version><Description>A42</Description><Region><Cell Level="2" Division="1"/><Cell Level="2" Division="1"/></Region></File>
文件 “A74” XML内容:
<?xml version="1.0" encoding="UTF-8"?>
<File Name="A74"><Version>1</Version><Description>A74</Description><Region><Cell Level="3" Division="1"/><Cell Level="3" Division="1"/></Region></File>
我可以整理出以下基于另一个查询,但是,它的不为我工作...任何你可以提供将非常感激。
顺便说一句,"targetdir=C:\USC VILLAGE"
是我试图输出这些文件的位置,但我希望能够编辑此路径并在任何可能的地方创建这些文件。
@ECHO OFF
SETLOCAL
SET "targetdir=C:\USC VILLAGE"
SET /a filecount=0
SET "and_subdirs="
:again
PUSHD "%targetdir%"
FOR %and_subdirs% %%a IN (
"*.dwg"
) DO (
SET /a filecount+=1
>"%%~dpna.xml" (
ECHO(^<?xml version="1.0" encoding="UTF-8"?>
ECHO( <File Name="%%~na">
ECHO( <Version>1</Version>
ECHO( <Description>%%~nxa"</Description>
ECHO( </File^>
)
)
)
)
popd
IF NOT DEFINED and_subdirs IF %filecount%==0 SET "and_subdirs=/r"& GOTO again
ECHO(%filecount% files found
IF DEFINED and_subdirs ECHO(Subdirectories were scanned
GOTO :EOF
感谢, DOrtega
凡'<单元级别= “3” 司= “1”/>'从何而来?为什么在你所有的_XML Contents_ description中加倍? – JosefZ
它必须是批处理,或者是例如'perl'(它可以在Windows上运行)一个选项吗?我想问的原因 - XML看起来比以前复杂得多,使用合适的解析器可以帮助大众。 – Sobrique
@ JosefZ-I'll必须确认细胞水平和分裂以及它们是否重复。这些与AutoCAD直接相关。这种信息的位告诉AutoCAD的什么级别的文件被关联到(例如3级),和分割(例如:区域4) –