![]() |
Поиск строки в файлах *.xml с кодировкой 65001 (UTF-8) без BOM
Нужна помощь в решении задачи.
Имеется папка с файлами xml с кодировкой 65001 (UTF-8) без BOM в которых есть строки х912хм, х812хх, л845ка и т.д. Все эти строки я записал в папку 1.txt Теперь код программы, который берет строку из файла 1.txt и сверяет её на наличие в файлах xml, если такая строка имеется, то перенести этот файл в другую папку. @echo off set "list=D:\12345678\1.txt" set "from=D:\12345678" set "to=D:\12345678\sort" for /f "usebackq delims=" %%i in ("%list%") do ( for /f "delims=" %%j in ('findstr/ilmc:"%%i" "%from%\*.xml"') do ( for /f "delims=" %%k in ('2^>nul dir/a-d/b "%from%\%%~nj.*"') do ( if "%%~nk" equ "%%~nj" move/y "%from%\%%k" "%to%\" ) ) ) pause exit/b Данный код программы не работает и я не могу решить ее, хотя если я в файле 1.txt оставлю только цифры, то код программы находит строку и переносит файл. |
Код:
@echo off Цитата:
Список сохраните в кодировке UTF-8. |
Пробовал, не ищет.
|
|
Вложений: 3
Я сохранял все равно не получается.
Я прикрепил файлы у кого есть время может посмотрите. |
Цитата:
Цитата:
|
Что получается? просто перенести файлы?
|
Цитата:
|
Команда "FIND" в файлах в кодировке UTF-8 "копается", но вот только непонятно, как она "относится" к наличию в этих файлах кириллицы. Поэтому попробуйте такой вариант:
Код:
@echo off . |
Georgio, я извиняюсь, у меня все получилось, я не внимательно посмотрел код который вы написали, он прекрасно работает, также код через оболочку powershell работает, даже чуть быстрее.
Большое спасибо Вам. :-) |
Время: 03:18. |
Время: 03:18.
© OSzone.net 2001-