我想創建一個批處理文件,該文件將根據.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) –