2014-12-09 7 views
0

Я заинтересован в том, чтобы файл txt разбирался с word_A в word_B, а результат отправлялся в новый файл (new_file_1.txt) ... Каждый раз, когда word_A и word_B находятся внутри этого оригинала текстовый файл на выходе проталкивается к new_file_2.txt + N ... и это продолжаетсяИзвлечение текста в DOS для разделения файлов

Моя цель состоит в том, чтобы извлечь TXT между двумя XML-тегов и сохранить вывод в отдельные файлы ...

спасибо .. Я должен упомянуть более подробно ваш ответ/помочь лучше, поскольку я новичок.

Также это можно сделать в dos? У меня нет компилятора для запуска кода ...

+0

Это было бы жестким словом в пакетных файлах. –

ответ

0

Жесткий, schmuff. Просто нужно перерабатывать старые партии.

Действительно зависит от вашего формата данных - но вы не предоставили образец.

Here's one I solved earlier

Выборочные данные в q23655846.txt

<root> 
<cities> 
     <cityName>paris</cityName> 
     <cityName>london</cityName> 
     <cityName>...</cityName> 
     ...   
</cities> 
<countries> 
     <countryName>india</countryName> 
     <countryName>japon</countryName> 
     <countryName>...</countryName> 
     ...   
</countries> 
<continents> 
     <continentName>asia</continentName> 
     <continentName>america</continentName> 
     <continentName>South america</continentName> 
     <continentName>...</continentName> 
     ...  
</continents> 
</root> 

Модифицированный код, чтобы удовлетворить «каждый в своем требовании File`:

@ECHO OFF 
SETLOCAL 
SET "outloc=U:\destdir\file_" 
set "tag=continentName" 
set "f_xml=q23655846.txt" 

set "tag2=/%tag%" 
setlocal enabledelayedexpansion enableextensions 

set fcnt=0 
for /f "tokens=2-4delims=<>" %%a in (%f_xml%) do (
IF "%%a"=="%tag%" IF "%%c"=="%tag2%" SET /a fcnt+=1&>>"%outloc%!fcnt!" ECHO(%%b 
) 
GOTO :eof 

Установка outloc Я оставляю вы - местоположение, которое я разместил, удобно для моей системы. Тоже тег и имя файла xml.

Незначительные изменения потребуются, если вы хотите вывести блок, или если ваше абсолютное имя исходного файла содержит символы разделителя, такие как пробелы.

Смежные вопросы