批量转换cue文件编码
之前在网上下载的无损(flac、ape),好多都是整盘的,也就是说一个flac或ape文件搭配一个cue分轨文件,这个文件记录着在不同时间段是哪一首歌曲。
由于之前的操作都是在windows下进行的,所以在linux下打开会出现编码问题。这里简单写了一个脚本,批量转换cue文件编码(同样也适用于srt字幕文件的转换)。
用python写的,因为用bash的话处理不太好空格问题(如果文件名字中出现了空格,就会将这个路径分隔成好几部分)
这里用到了enca这个转换编码的工具(直接在zshrc里面将alias enca = "enca -L zh_CN -x utf-8",使用起来方便了点)
#!env python2
#coding:utf-8
import os temp = ""
filelist = os.popen("find . -name '*.cue'").readlines()
for file in filelist:
for ch in file:
if ch == " ":
temp += "\ "
else:
temp += ch for file in temp.split("\n"):
print file
os.system("enca -L zh_CN -x UTF-8 " + file)
这样就简简单单的将子目录下的所有cue文件的编码转换成了UTF-8,简单修改就支持到其他文件了
upgrade:
倘若文件名中包含括号:(),英文,就会无法执行命令,解决方法:
1.将括号用""包含进去,例如'./123"(1)".cue'
2.在括号前面加u94,例如"./123u94(1).cue"
分别实验了两种方法,第二种方法不能通过,因为直接将u94传递给了shell
改进后的代码:
#!env python2
#coding:utf-
import os temp = ""
filelist = os.popen("find . -name '*.cue'").readlines()
for file in filelist:
for ch in file:
if ch == " ":
temp += "\ "
elif ch == "(":
temp += '"("'
elif ch == ")":
temp += '")"'
else:
temp += ch for file in temp.split("\n"):
os.system("enca -L zh_CN -x UTF-8 " + file)
批量转换cue文件编码的更多相关文章
- Linux下将UTF8编码批量转换成GB2312编码的方法
Linux下将UTF8编码批量转换成GB2312编码的方法 在sqlplus中导入UTF8编码的sql脚本就会出现乱码错误,这时就需要将UTF8编码转换成GB2312编码,下面为大家介绍下在Linux ...
- 一个批量转换jtl文件的shell
最近在项目中遇到了批量转换jmeter测试结果jtl的问题,整了一个脚本,记录如下: #bin/sh filelist=`ls jtl` # 将jtl目录的所有文件列表读取并存入变量 for file ...
- python 通过使用pandas的实现的Excel的批量转换CSV文件的处理
---恢复内容开始--- 最近同事在处理文件导入的时候需要把一批文件换成CSV的格式,但是直觉修改后缀是不生效的,而且xlsx和xls的文件没法直接换成CVS的文件,所以找了一下方式,并且自己实现了p ...
- 如果把PNG、JPG、BMP和GIF文件批量转换为ICO文件?
有时候需要将大量的图片文件(比如PNG.JPG.BMP和GIF文件)批量转换为ICO图标文件,如果一个一个操作,非常费时间.本文将介绍如何用Dr. Folder软件快速批量转换图片文件为ICO图标文件 ...
- 解决Qt中文乱码以及汉字编码的问题(UTF-8/GBK)——ubuntu环境设置默认是utf-8,文件编码可使用Encodersoft批量转换
一.Qt环境设置 文件从window上传到Ubuntu后会显示乱码,原因是因为ubuntu环境设置默认是utf-8,Windows默认都是GBK.Windows环境下,Qt Creator,菜单-&g ...
- 使用windows命令和iconv.exe批量转换文件编码
iconv是知名的开源跨平台编码转换库,iconv.exe是iconv库在windows下的命令行工具,iconv.exe的一般用法:iconv.exe -f gbk -t utf-8 gbk.txt ...
- shell脚本 批量转换目录下文件编码
发布:JB01 来源:脚本学堂 [大 中 小] 分享一例shell脚本,实现可以批量转换目录下的文件编码,很实用的一个小shell,有需要的朋友参考下.原文地址:http://www.jb ...
- py2.7 批量转换文件为 utf8 编码
source insight 不支持 utf8 ,但是在 linux 上查看的时候是 utf8 编码,就会显示不正常,所以写了个 python 小脚本,可以批量转换 py2.7 #coding:utf ...
- C# Winform 文件编码批量转换工具
在发布产品程序包时,往往需要对程序文件进行编码检查,写了一个可以批量修改文件编码格式的辅助工具,希望对有同样需求的童鞋有帮助. 1.程序界面: 2.核心代码: /// <summary> ...
随机推荐
- js 实现键盘记录 兼容FireFox和IE
这两天突然想弄弄js的键盘记录,所以就小研究了一下. 主要分四个部分 第一部分:浏览器的按键事件 第二部分:兼容浏览器 第三部分:代码实现和优化 第四部分:总结 第一部分:浏览器的按键事件 用js实现 ...
- CENTOS6.4安装lxml失败
环境如下: Centos6.4 Python 2.7.6 pip install lxml 执行上面的命令,有类似下面的提示: src/lxml/lxml.etree.c:188133: error: ...
- WPF - Visual调试工具Snoop
原文:WPF - Visual调试工具Snoop Snoop经过很长一段时间,最近更新到支持NET 3.5了,它是一个WPF运行时对Visual UI调试的一个工具,最近我用过它调试修改过一个bug, ...
- iOS10收集IDFA,植入第三方广告[终结]--ADMob
[PS: 前段时间,公司做ASO推广,需要在应用中收集IDFA值,跟广告平台做交互!于是有了这个需求--] 1.首先,考虑了一下情况(自己懒 -_-#),就直接在首页上写了一个Banner,循环加载广 ...
- Linux下javaweb
Linux下javaweb环境搭建 步骤: 1.使用远程工具连接上服务器,例如xsheel(ssh).filezilla(ftp) 2.JDK安装及相关配置 3.Mysql安装及相关配置 4.Tomc ...
- Google maps API开发
原文:Google maps API开发 Google maps API开发(一) 最近做一个小东西用到google map,突击了一下,收获不小,把自己学习的一些小例子记录下来吧 一.加载Googl ...
- 利用svn自动同步更新到网站服务器 -- 网摘
首先在服务器上安装VisualSVN Server ,根据提示选好安装的路径,一路确定.安装好后运行VisualSVN Server ,在Repositories上点击右键,选择create New ...
- ural1519插头DP
1519. Formula 1 Time limit: 1.0 second Memory limit: 64 MB Background Regardless of the fact, that V ...
- Spring Resource之ResourceLoader
ResourceLoader接口意味着任何实现的对象都能够返回Resource实例. public interface ResourceLoader { Resource getResource(St ...
- 安装uBuntu操作系统 - 初学者系列 - 学习者系列文章
uBuntu是一款不错的Linux操作系统,在上面的应用软件不少,就是说它的支持率挺高.下面就对这款操作系统的安装做下介绍. 1. 下载uBuntu安装文件 打开中文页面.http://www.ub ...