Board logo

标题: [文本处理] 【已解决】批处理如何按指定格式生成电视播放列表,先谢了! [打印本页]

作者: suchost    时间: 2015-10-2 22:26     标题: 【已解决】批处理如何按指定格式生成电视播放列表,先谢了!

本帖最后由 pcl_test 于 2016-7-22 10:53 编辑

现有文本文件a.txt,内容如下:
三立台湾台,rtmp://kv3.ts33.net/sat/tv292
纬来育乐台,rtmp://kv3.ts33.net/sat/tv701
纬来体育台,rtmp://kv3.ts33.net/sat/tv722

现在想生成效果①:
#EXTM3U
#EXTINF:-1,三立台湾台
rtmp://kv3.ts33.net/sat/tv292
#EXTINF:-1,纬来育乐台
rtmp://kv3.ts33.net/sat/tv701
#EXTINF:-1,纬来体育台
rtmp://kv3.ts33.net/sat/tv722
并保存为b.m3u

效果②:
[playlist]
File1=rtmp://kv3.ts33.net/sat/tv292
Title1=三立台湾台
File2=rtmp://kv3.ts33.net/sat/tv701
Title2=纬来育乐台
File3=rtmp://kv3.ts33.net/sat/tv722
Title3=纬来体育台
并保存为c.pls
作者: aa77dd@163.com    时间: 2015-10-2 22:46

  1. @echo off & setlocal enabledelayedexpansion
  2. >b.m3u echo #EXTM3U
  3. >c.pls echo [playlist]
  4. for /f "tokens=1* delims=," %%a in (a.txt) do (
  5.   >>b.m3u (echo #EXTINF:-1,%%a&echo %%b)
  6.   set /a cnt+=1
  7.   >>c.pls (echo File!cnt!=%%a&echo Title!cnt!=%%b)
  8. )
复制代码

作者: cjiabing    时间: 2015-10-2 22:46

  1. @echo off
  2. >b.m3u echo #EXTM3U
  3. for /f "tokens=1* delims=," %%a in (a.txt) do (echo #EXTINF:-1,%%a&echo %%b)>>b.m3u
  4. >c.pls echo [playlist]
  5. for /f "tokens=1* delims=," %%a in (a.txt) do (echo File1=%%a&echo Title1=%%b)>>c.pls
  6. echo 注意:编码格式改为UTF-8或Unicode
  7. pause
复制代码

作者: suchost    时间: 2015-10-2 23:27

回复 2# aa77dd@163.com


感谢大神,好用,由于早些时候发错了格式,不好意思,请大神把这句:
“ >>c.pls (echo File!cnt!=%%a&echo Title!cnt!=%%b)”的“a”和“b”对换就完美了
作者: suchost    时间: 2015-10-2 23:40

回复 3# cjiabing


感谢您的回帖,b.m3u测试通过,但c.pls只有一个台  ,实测用ANSI码才行,UTF-8或Unicode乱码。
作者: cjiabing    时间: 2015-10-3 00:44

回复 5# suchost


    以为是暴风影音(*.smpl),不好意思看错
作者: suchost    时间: 2015-10-3 11:01

本帖最后由 suchost 于 2015-10-3 11:02 编辑

回复 6# cjiabing

感谢版主大神,请教怎么修改把a.txt文件用一个批处理生成各种常见播放列表格式,造福大众呢?
作者: cjiabing    时间: 2015-10-3 18:59

回复 7# suchost


    首先你要了解播放列表的文本格式、后缀名、编码方式等等,如果能够用记事本打开编辑基本上用批处理处理就不难了。
    各种播放器的播放列表应该都不一样吧,搞清楚哪些是固定的内容,哪些是变量,用批处理生成就OK了。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2