有谁知道一个Java库,让我读m3u格式的文件来获得 文件的名称和它作为一个数组绝对路径...?读M3U(播放列表)文件
澄清:我想我的Java程序能够解析Winamp的播放列表文件 (.M3U)获得mp3文件的名称+路径在播放列表中
有谁知道一个Java库,让我读m3u格式的文件来获得 文件的名称和它作为一个数组绝对路径...?读M3U(播放列表)文件
澄清:我想我的Java程序能够解析Winamp的播放列表文件 (.M3U)获得mp3文件的名称+路径在播放列表中
快速谷歌搜索产量Lizzy
,这似乎做what you want。
在这个阶段不能推荐Lizzy。单元测试是基本上不存在的,这个项目不会被维持并埋在Sourceforge上。另外还有一个很难的ffmpeg依赖关系,这对于文本文件解析器来说没有什么意义。 – 2015-03-03 04:04:30
试试我的Java M3U解析器:
用法:
try{
M3U_Parser mpt = new M3U_Parser();
M3UHolder m3hodler = mpt.parseFile(new File("12397709.m3u"));
for (int n = 0; n < m3hodler.getSize(); n++) {
System.out.println(m3hodler.getName(n));
System.out.println(m3hodler.getUrl(n));
}
}catch(Exception e){
e.printStackTrace():
}
该项目公布here
M3U是可以通过线上线读取一个普通的文本文件。只记得以#开头的行是注释。这是我为此目的而制作的课程。本课程假定您只需要计算机上的文件。如果你想在网站上的文件,你将不得不做一些小的编辑。
/*
* Written by Edward John Sheehan III
* Used with Permission
*/
package AppPackage;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author Edward John Sheehan III
*/
public class PlayList {
List<String> mp3;
int next;
public PlayList(File f){
mp3=new ArrayList<>();
try (BufferedReader br = new BufferedReader(new FileReader(f))) {
String line;
while ((line = br.readLine()) != null) {
addMP3(line);
}
} catch (IOException ex) {
System.out.println("error is reading the file");
}
next=-1;
}
private void addMP3(String line){
if(line==null)return;
if(!Character.isUpperCase(line.charAt(0)))return;
if(line.indexOf(":\\")!=1)return;
if(line.indexOf(".mp3", line.length()-4)==-1)return;
mp3.add(line);
}
public String getNext(){
next++;
if(mp3.size()<=next)next=0;
return mp3.get(next);
}
}
然后就叫
Playlist = new PlayList(file);
我不知道你问什么。 '将文件名和它的绝对路径作为一个数组'是什么意思?也许你可以显示一些伪代码? – home 2012-02-24 07:42:07
为什么不直接阅读.m3u文件的内容? 得到线阵列和前置于每行的m3u格式文件的目录。 – 2012-02-24 07:43:25