XMLを解析して、整形済みで有効なxmlをすべて1つのtxtファイルに書き込もうとしています(string1参照)。他のタイプのxmlは別のtxtファイルに書き込まれるべきです(文字列2,3を参照)。問題は、私だけがstring1とXMLSをキャッチすることができるということです2番目と3番目のforループの一括出力が表示されない
<status>Well-Formed and valid</status>
または
<status>Well-Formed, but not valid </status>
または
<status>Not well-formed </status>
:常に分析されるべきであるxmlファイルには、以下の構造を有しています。 txtファイルにstring2とstring3のxmlsの出力はありません。なぜ私は理解できないのですか?
set string1=Well-Formed and valid
set string2=Well-Formed, but not valid
set string3=Not well-formed
for /f %%i in ('dir /b /s C:\Users\NekhayenkoO\outputxml\') do (
for /f "tokens=3 delims=>/<" %%h in ('find "%string3%" %%i ') do (
echo %%~ni %%h >> C:\Users\N\outputxml\formed2.txt
)
for /f "tokens=3 delims=>/<" %%h in ('find "%string1%" %%i ') do (
echo %%~ni %%h >> C:\Users\N\outputxml\Well-formed_and_valid.txt
)
for /f "tokens=3 delims=>/<" %%h in ('find "%string2%" %%i ') do (
echo %%~ni %%h >> C:\Users\N\outputxml\formed1.txt
)
)
'.txt'ファイルに実際に何を書きたいのですか?私は、それは '正式で有効な'部分だと思います。 ''の前に空白がありますか?彼らは確かに常にそこにいるのですか?とにかく、空白やその他の特殊文字(例えば、 '%% i' - ' '%%〜i' '、' >> C:\ Users \ N \ outputxml \ formed2.txt' - > '>>" C:\ Users \ N \ outputxml \ formed2.txt "')。次に、オプション文字列 '' delims = "'を外側のfor/F'ループに追加する必要があります。 –
aschipfl