Java codeimport java.io.File;

import java.io.FileInputStream;

import java.io.FilenameFilter;

public class Rename {

/**

* @param args

*/

public static void main(String[] args) {

File file = new File("d:/aaa/"); //歌词存放路径

long start = System.currentTimeMillis();

File[] fList = file.listFiles(new FilenameFilter() { //过滤文件,只处理 lrc格式的

@Override

public boolean accept(File dir, String name) {

if (!name.endsWith(".lrc"))

return false;

return true;

}

});

byte[] buf = new byte[1000];

for (int i = 0; i < fList.length; i++) {

try {

FileInputStream fis = new FileInputStream(fList[i]);

int length = fis.read(buf, 0, buf.length); //将文件开头的1000个字节读入到buf里

fis.close();

String tmp = new String(buf, 0, length);

rename(fList[i], tmp); // 重命名

} catch (Exception e) {

System.out.println(e);

}

}

long usedTime = System.currentTimeMillis()-start;

System.out.println("用时:"+usedTime);

}

public static void rename(File file, String str) {

String fullname = "";

String artist = "";

String name = "";

if (-1 != str.indexOf("[ar:")) {

String tmp = str.substring(str.indexOf("[ar:"), str.length());

artist = tmp.substring(0, tmp.indexOf("]"))

.replaceAll("\\[ar:", "");

if (-1 != str.indexOf("[ti:")) {

String tmp2 = str.substring(str.indexOf("[ti:"), str.length());

name = tmp2.substring(0, tmp2.indexOf("]")).replaceAll(

"\\[ti:", "");

fullname = artist + " - " + name;

} else {

fullname = artist + " - 未知歌名";

}

} else {

if (-1 != str.indexOf("[ti:")) {

String tmp2 = str.substring(str.indexOf("[ti:"), str.length());

name = tmp2.substring(0, tmp2.indexOf("]")).replaceAll(

"\\[ti:", "");

fullname = "未知歌手 - " + name;

}

}

if (!"".equals(fullname)) {

file.renameTo(new File(file.getParent() + fullname + ".lrc"));

}

}

}

java歌词添加,分享 :java实现 歌词文件的智能命名解决方法相关推荐

  1. bytes数组转string指定编码_好程序员Java学习路线分享Java基础之string

    好程序员Java学习路线分享Java基础之string 好程序员Java培训 先来讲一下字符串 字串符分类: 不可变字符串:----String.字符串本身不能发生改变,与指向字符串的引用无关. St ...

  2. Java读带有BOM的UTF-8文件乱码原因及解决方法(转)

    转载:http://www.linuxidc.com/Linux/2012-12/76707.htm 最近在处理文件时发现了同样类型的文件使用的编码可能是不同的.所以想将文件的格式统一一下(因为UTF ...

  3. Java读取UTF-8格式txt文件第一行出现乱码及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法(转载)...

    原文地址:http://blog.csdn.net/jackpk/article/details/5702964/ Java读取UTF-8的txt文件第一行出现乱码"?"及解决 t ...

  4. Java读带有BOM的UTF-8文件乱码原因及解决方法

    Java读带有BOM的UTF-8文件乱码原因及解决方法 Java读带有BOM的UTF-8文件乱码原因及解决方法 - daimojingdeyu - ITeye技术网站 Java读带有BOM的UTF-8 ...

  5. java delete file 失败_file.delete()无法删除文件的原因及解决方法

    file.delete()无法删除文件的原因及解决方法 发布时间:2020-05-06 09:41:00 来源:亿速云 阅读:756 作者:小新 今天小编给大家分享的是file.delete()无法删 ...

  6. java去掉mongodb日志_MongoDB日志文件过大的解决方法 清理

    MongoDB日志文件过大的解决方法 2016年05月09日 14:43:11 jjwen 阅读数 1261 MongoDB的日志文件在设置 logappend=true 的情况下,会不断向同一日志文 ...

  7. java tm已被阻止_win7系统不能运行java提示“应用程序已被安全设置被阻止”的解决方法...

    无论谁在使用电脑的时候都可能会发现不能运行java提示"应用程序已被安全设置被阻止"的问题,不能运行java提示"应用程序已被安全设置被阻止"让用户们很苦恼,这 ...

  8. 如何给html文件夹密码,怎样给文件夹加上密码_分享两种给文件夹设密码的方法...

    现在大家习惯把重要的文件或比较隐私的文件存放在电脑上,出于安全考虑,大家会选择给文件夹设密码.但是问题来了,怎样给文件夹加密码呢?估计大多数的人都还不太清楚该怎么设置吧,别着急,这里小编分享两种给文件 ...

  9. Java 提示“找不到或无法加载主类” 解决方法

    Java 提示"找不到或无法加载主类" 解决方法 参考文章: (1)Java 提示"找不到或无法加载主类" 解决方法 (2)https://www.cnblog ...

最新文章

  1. JDK 13 的 12 个新特性,真心涨姿势了
  2. Silverlight专题(WatermarkedTextBox使用)--摘录 很受用
  3. vue-route+webpack部署单页路由项目,访问刷新出现404问题
  4. ML之FE:数据处理—特征工程之特征三化(标准化【四大数据类型(数值型/类别型/字符串型/时间型)】、归一化、向量化)简介、代码实现、案例应用之详细攻略
  5. [BZOJ2429][HAOI2006]聪明的猴子(最小生成树)
  6. linux cvs服务,Linux环境下轻松搭建CVS服务器
  7. keil中断函数的写法_在 KeilC里,中断子程序与函数有何不同?( )_学小易找答案
  8. NSIS 查找文件是否存在,并设置安装路径
  9. 计算机应用基础重点分析,计算机应用基础整体设计重点分析.doc
  10. 关于maven打包成.exe
  11. CentOS下MFS分布式文件系统搭建
  12. python写游戏的好选择: easygame
  13. 五大主流浏览器内核以及国内常见的几种浏览器内核总结
  14. 计算机模拟比赛,关于参加2017年中小学计算机模拟城市设计比赛的通知
  15. 软件测试的术语SRS,HLD,LLD,BD,FD,DD意义
  16. 如何在python中获得当前时间前几天的日期
  17. 反射、装箱拆箱、ArrayList与Array的区别 - 天生舞男 - 博客园
  18. android 强制垃圾回收,Android垃圾回收(GC)
  19. 详述 MIMIC 数据库 26张数据表(二)之 五种字典表
  20. Qt之加载百度离线地图(WebKit和WebEngine)

热门文章

  1. 滴滴 AI Labs 负责人叶杰平因个人原因即将离职!CTO 张博接任
  2. 继C / C ++之后,微软如何全面采用 Rust 的?
  3. 后疫情时代,初创企业生存之策
  4. 同心抗疫,IBM中国有限公司致客户的一封信
  5. 回归即登顶社交应用排行榜,多牛传媒开启人人“第二春”
  6. Twitter 有权删除去世用户的账号吗?
  7. 硬核科普!携号转网的技术原理分析!
  8. 北大毕业 15 年经验架构师,重磅解读 5G 时代的计算平台
  9. 程序员如何解决并发冲突的难题?
  10. 少林寺步入 5G 时代!