次のことを実行する必要があります。
- テキストを含む .xml ファイルのフォルダーがあります
- 特定の xml ペアを検索し、それらの値を取得する必要があります
- そのフォルダー内のすべての .xml ファイルを繰り返し処理し、必要な値だけを含む単一のファイルに結果を出力する必要があります。
.bat ファイルを使用してそれを行うにはどうすればよいでしょうか。.bat ファイルを操作するという考えはありますが、これほど複雑なことはありません。
次のことを実行する必要があります。
.bat ファイルを使用してそれを行うにはどうすればよいでしょうか。.bat ファイルを操作するという考えはありますが、これほど複雑なことはありません。
おそらく、.xml ファイルの一般的な形式と必要な特定のペアを提示していただければ、ご希望のバッチ ファイルを表示できます。バッチ ファイルは、特定の固定された方法でファイルを処理するように記述されているため、他の形式に柔軟性がない場合を除き、他の形式のファイルには "一般的な" バッチ ソリューションはありません。
以下に、バッチ ファイルを使用した .xml ファイル処理の 3 つの例を示します。
次のバッチ ファイルは、必要な "xml ペア" が上記の 2 番目の例と同じであると仮定して、目的を達成する例です。
@echo off
rem I have a folder of .xml files with text in them
cd "C:\Documents and Settings\My Name\The Folder"
rem I need to iterate through all the .xml files in that folder and output the results to a single file with just the values I need.
(for %%a in (*.xml) do (
call :check_lines < "%%a"
)) > "The Single File.txt"
exit /b
rem I need to search for particular xml pairs and pull their values
rem Seek for the start of Data tag
:check_lines
set /P line=
if not "%line%" == "<DATA>" goto check_lines
rem Copy until the end of Data tag
set /P line=
:put_lines
if "%line%" == "</DATA>" goto end_lines
set /P line=%line%
goto put_lines
:end_lines
echo/
exit /B