Сохраняйте имена файлов с кириллическими буквами из одного текстового файла в другой
Может быть, кто-то может мне помочь... У меня есть список (содержащий также буквы кириллицы), как это (channel.txt):
#EXTINF:-1,5 канал Россия
http://95.189.57.162:1234/udp/233.7.70.6:5000
#EXTINF:-0,ТВ3
http://95.189.57.161:1234/udp/233.7.70.7:5000
#EXTINF:-1,ТНТ
rtmp://95.189.54.166:1234/udp/233.7.70.8:5000
#EXTINF:-2,Disney Channel
mms://95.189.52.146:1234/udp/233.7.70.9:5000
#EXTINF:-1,49 Канал
http://95.189.51.163:1234/udp/233.7.70.11:5000
Строка, начинающаяся с #EXTINF: дает название телеканала. Каналы:
- 5 канал Россия
- ТВ3
- ТНТ
- канал Дисней
- 49 Канал
Следующая строка - ссылка на этот канал.
Какая команда или пакетный скрипт может создать текстовый файл для каждого канала списка и поместить в соответствующую ссылку? Для этого примера:
- 5 канал Россия.txt ->
http://95.189.57.162:1234/udp/233.7.70.6:5000
- ТВ3.txt ->
http://95.189.57.161:1234/udp/233.7.70.7:5000
- ТНТ.txt ->
rtmp://95.189.54.166:1234/udp/233.7.70.8:5000
- Disney Channel.txt ->
mms://95.189.52.146:1234/udp/233.7.70.9:5000
- 49 Канал.txt ->
http://95.189.51.163:1234/udp/233.7.70.11:5000
Буду очень признателен за любую помощь! Большое спасибо!
1 ответ
Решение
Попробуй это:
@ECHO OFF &SETLOCAL ENABLEDELAYEDEXPANSION
FOR /f "tokens=2 delims=:" %%a IN ('chcp') DO SET /a CurrentCodePage=%%a 2>nul
CHCP 1251 >nul
FOR /f "tokens=1*delims=," %%a IN ('type file.txt') DO (
SET "link=%%a"
SET "channel=%%b"
IF DEFINED channel (SET "fname=!channel!"
) ELSE (ECHO !link!)>"!fname!.txt"
)
CHCP %currentCodePage% >nul
dir
вывод с кодовой страницей 850:
29.06.2013 08:38 48 49?????. Txt 29.06.2013 08:38 47 5???????????.текст 29.06.2013 08:38 46 Disney Channel.txt 29.06.2013 08:38 47?? 3.txt 29.06.2013 08:38 47???. Txt
dir
вывод с кодовой страницей 1251:
29.06.2013 08:38 48 49 Канал.txt 29.06.2013 08:38 47 5 канал Россия.txt 29.06.2013 08:38 46 Disney Channel.txt 29.06.2013 08:38 47 ТВ3.txt 29.06.2013 08:38 47 ТНТ.txt
Для получения дополнительной информации о cmd и кодовых страницах нажмите здесь.