音乐播放器java源代码

合集下载

java视频播放器源代码

java视频播放器源代码

import java.awt.*;import java.io.*;import java.util.*;import javax.media.*;import javax.media.format.*;import javax.swing.*;public class VideoPlayer implements ControllerListener {Vector audioCapDevList = null;Vector videoCapDevList = null;CaptureDeviceInfo audioCapDevInfo = null;CaptureDeviceInfo videoCapDevInfo = null;MediaLocator audioCapDevLoc = null;MediaLocator videoCapDevLoc = null;Player audioPlayer;Player videoPlayer;public void initAudioCapDevLoc() {//这里可以填写其它的音频编码格式,具体请看AudioFormat类audioCapDevList = CaptureDeviceManager.getDeviceList(new AudioFormat(AudioFormat.LINEAR));if ((audioCapDevList.size() > 0)) {//或许有几个CaptureDevice,这里取第一个audioCapDevInfo = (CaptureDeviceInfo) audioCapDevList.elementAt(0);audioCapDevLoc = audioCapDevInfo.getLocator();} else {System.out.println("找不到音频采集设备");System.exit(0);}}public void initVideoCapDevLoc() {//这里可以填写其它的编码视频格式,具体请看VideoFormat类videoCapDevList = CaptureDeviceManager.getDeviceList(new VideoFormat(VideoFormat.YUV));if ((videoCapDevList.size() > 0)) {//或许有几个CaptureDevice,这里取第一个videoCapDevInfo = (CaptureDeviceInfo)videoCapDevList.elementAt(0);videoCapDevLoc = videoCapDevInfo.getLocator();} else {System.out.println("找不到视频采集设备");System.exit(0);}}public void initAudioPlayer() {try {audioPlayer = Manager.createPlayer(audioCapDevLoc);} catch (NoPlayerException ex) {} catch (IOException ex) {}//增加一个侦听器,侦听player状态的改变audioPlayer.addControllerListener(this);audioPlayer.realize();}public void initVideoPlayer() {try {videoPlayer = Manager.createPlayer(videoCapDevLoc);} catch (NoPlayerException ex) {} catch (IOException ex) {}//增加一个侦听器,侦听player状态的改变videoPlayer.addControllerListener(this);videoPlayer.realize();}public void stopAndClosePlayer(){audioPlayer.stop();audioPlayer.close();videoPlayer.stop();videoPlayer.close();}public synchronized void controllerUpdate(ControllerEvent ce) { Player p = (Player) ce.getSourceController();JFrame jFrame = new JFrame();Component com;if (p == null) {return;}//如果player的状态变为Realizedif (ce instanceof RealizeCompleteEvent) {if ((com = p.getControlPanelComponent()) != null) {jFrame.add(com, BorderLayout.SOUTH);}if ((com = p.getVisualComponent()) != null) {jFrame.add(com, BorderLayout.NORTH);}jFrame.setVisible(true);jFrame.pack();jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); p.start();}}public static void main(String args[]) {V ideoPlayer cap = new VideoPlayer();cap.initAudioCapDevLoc();cap.initVideoCapDevLoc();cap.initAudioPlayer();cap.initVideoPlayer();try {Thread.currentThread().sleep(20000);//20秒后停止并关闭播放器 } catch (InterruptedException ex) {}cap.stopAndClosePlayer();}}。

java播放声音文件的方法

java播放声音文件的方法

java播放声音文件的方法java播放声音文件的方法大家知道java播放声音文件吗?很多人讲要使用JFM,但是也有人懒得去安装,所以另寻他法。

下面是店铺为大家搜索整理的java播放声音文件的方法,希望能给大家带来帮助!如下:public void play(String Filename)//Filename是乐曲名称或说路径{try {URL url = new URL("file:" + Filename);AudioClip ac = Applet.newAudioClip(url);ac.play();//ac.stop();//用此函数可以停止乐曲播放} catch (Exception e) {System.out.println(e);}}当然,前提是导入3个包:import java.applet.Applet;import java.applet.AudioClip;import .URL;然而实践证明这个方法并不好用,播放的声音断断续续,听起来简直是一种折磨~(不晓得这是类库本身的原因还是我电脑的故障~)后来发现了一个好方法,是由/wenda/thread?tid=7f56d51cd8e46a29& clk=wttpcts中的”神之泪花“提供的。

public void play(String Filename){try{// 用输入流打开一音频文件InputStream in = new FileInputStream(Filename);//FIlename 是你加载的声音文件如(“game.wav”)// 从输入流中创建一个AudioStream对象AudioStream as = new AudioStream(in);AudioPlayer.player.start(as);//用静态成员player.start播放音乐//AudioPlayer.player.stop(as);//关闭音乐播放//如果要实现循环播放,则用下面的三句取代上面的“AudioPlayer.player.start(as);”这句/*AudioData data = as.getData();ContinuousAudioDataStream gg= new ContinuousAudioDataStream (data);AudioPlayer.player.start(gg);// Play audio.*///如果要用一个URL 做为声音流的'源(source),则用下面的代码所示替换输入流来创建声音流:/*AudioStream as = new AudioStream (url.openStream());*/} catch(FileNotFoundException e){System.out.print("FileNotFoundException ");} catch(IOException e){System.out.print("有错误!");}}而要使用这个方法,导入的包与上一方法不同:import sun.audio.*; //java提供的,经常被忽略吧~import java.io.*;使用这个方法在我电脑上播放,很流畅。

java 播放声音代码

java 播放声音代码

import java.applet.*;import java.awt.*;import java.awt.event.*;import .*;public class Sound extends Appletimplements ActionListener {String onceFile = "file:/e:/myjava/eg0910/src/1.aif";String loopFile = "file:/e:/myjava/eg0910/src/1.mid";AudioClip onceClip;AudioClip loopClip;Button playOnce;Button stopOnce;Button startLoop;Button stopLoop;boolean looping = false;boolean playing = false;public void init() {try{onceClip= getAudioClip(new URL(onceFile));loopClip = getAudioClip(new URL(loopFile));}catch(MalformedURLException e){}playOnce = new Button("Play aif");stopOnce = new Button("Stop aif");stopOnce.setEnabled(false);playOnce.addActionListener(this);add(playOnce);stopOnce.addActionListener(this) ;add(stopOnce);startLoop = new Button("Loop midi");stopLoop = new Button("Stop Loop");stopLoop.setEnabled(false);startLoop.addActionListener(this);add(startLoop);stopLoop.addActionListener(this);add(stopLoop);}public void stop() {if (playing) {onceClip.stop(); //暂停播放}if (looping) {loopClip.stop(); //暂停循环播放}}public void start() {if (playing){onceClip.play(); //重新开始播放}if (looping) {loopClip.loop(); //重新开始循环播放}}public void actionPerformed(ActionEvent event) {Object source = event.getSource();//响应play Button事件if (source == playOnce) {if (onceClip != null) {playing = true;// Thread t = new Thread(new t1());// t.start();//播放音乐文件onceClip.loop();//play按钮变灰,stop按钮可用stopOnce.setEnabled(true);playOnce.setEnabled(false);showStatus("Playing sound " + onceFile + ".");} else {showStatus("Sound " + onceFile + " not loaded yet.");}return;}//响应stop Button事件if (source == stopOnce) {if (playing) {playing = false;//暂停播放onceClip.stop();//play按钮可用,stop按钮变灰playOnce.setEnabled(true);stopOnce.setEnabled(false);}showStatus("Stopped playing sound " + onceFile + ".");return;}//响应loop Button事件if (source == startLoop) {if (loopClip != null) {looping = true;//开始声音的循环播放loopClip.loop();//loop按钮可用,stop loop按钮变灰stopLoop.setEnabled(true);startLoop.setEnabled(false);showStatus("Playing sound " + loopFile + " continuously.");} else {showStatus("Sound " + loopFile + " not loaded yet.");}return;}//响应stop loop Button事件if (source == stopLoop) {if (looping) {looping = false;//停止声音的循环播放loopClip.stop();//loop按钮变灰,stop loop按钮可用startLoop.setEnabled(true);stopLoop.setEnabled(false);}showStatus("Stopped playing sound " + loopFile + ".");return;}}}。

安卓音乐播放器开发_含源代码

安卓音乐播放器开发_含源代码

基于android平台的音乐播放器开发实习报告学生姓名:王震学号:201210339班级:计算机1201班第一章引言1.1 项目背景当今社会的生活节奏越来越快,人们对手机的要求也越来越高,由于手机市场发展迅速,使得手机操作系统也出现了不同各类,现在的市场上主要有三个手机操作系统,Windows mobile,symbian,以及谷歌的Android操作系统,其中占有开放源代码优势的Android系统有最大的发展前景。

那么能否在手机上拥有自己编写的个性音乐播放器呢?能的,谷歌Android系统就能做到。

本文的音乐播放器就是基于谷歌Android手机平台的播放器。

Android:是谷歌于2007年公布的开放式源代码手机系统,它的开放性就优于其它封闭式的手机系统,因此,任何人都可能根据自己的喜好将手机系统中的所有功能重新编写。

这使得越来越多的人关注这个操作系统。

本次作品音乐播放器就是基于Android平台的。

1.2 编写目的现今社会生活紧张,而欣赏音乐是其中最好的舒缓压力的方式之一,本项目的目的是开发一个可以播放主流音乐文件格式的播放器,本设计实现的主要功能是播放Mp3,Wav多种格式的音乐文件,并且能够控制播放,暂停,停止,播放列等基本播放控制功能,界面简明,操作简单。

本项目是一款基于Android手机平台的音乐播放器,使Android手机拥有个性的多媒体播放器,使手机显得更生动灵活化,与人们更为接近,让手机主人随时随地处于音乐视频的旋律之中。

使人们的生活更加多样化。

也使设计者更加熟练Android的技术和其它在市场上的特点。

1.3 开发环境Eclipse、Android SDK 3.2.0第二章系统需求分析2.1 功能需求(用例图分析)根据项目的目标,我们可获得项目系统的基本需求,以下从不同角度来描述系统的需求,并且使用用例图来描述,系统的功能需求,我们分成四部分来概括,即播放器的基本控制需要,播放列表管理需求,播放器友好性需求和播放器扩展卡需求。

Java实现音频播放--JavaSoundAPI编写音频处理程序

Java实现音频播放--JavaSoundAPI编写音频处理程序

一、JavaSound的体系构造二、JavaSound混频原理三、音频数据与存储格式四、设计音乐播放器五、播放音乐六、支持更多的音频格式━━━━━━━━━━━━━桌面PC的性能日益提高,Java虚拟机的优化技术也不断获得突破,这一切使得用Java处理实时信号成为可能。

本文将通过设计和构造一个支持实时MP3、WAV和Ogg音频格式解码/回放的Java音乐播放器,阐述用JavaSound API编写音频处理程序的思路和一般过程。

JavaSound是一个小巧的低层API,支持数字音频和MIDI数据的记录/回放。

在JDK 1.3.0之前,JavaSound是一个标准的Java扩展API,但从Java 2的1.3.0版开场,JavaSound就被包含到JDK之中。

由于Java有着跨平台〔操作系统、硬件平台〕的特点,基于JavaSound的音频处理程序〔包括本文的程序〕能够在任何实现了Java 1.3+的系统上运行,无需加装任何支持软件。

一、JavaSound的体系构造当前JDK的JavaSound API随同Java媒体框架〔JMF,Java Media Framework〕一起发布,主页在java.sun./products/java-media/jmf/,适合JDK 1.1以及更高的版本。

除了JDK实现的JavaSound API之外,还有一个源代码开放的JavaSound实现是Tritonus,主页在/。

图一描述了JavaSound API的体系构造,虚线表示Sun的JavaSound标准定义的API调用。

上面一根虚线表示我们编写音频处理程序要调用的API,JavaSound API包含在javax.sound.sampled和javax.sound.midi包中。

两根虚线之间的局部就是JavaSound API的具体实现。

图一:JavaSound体系构造就象上面一根虚线表示的API具有统一标准一样,在所有的JavaSound实现中,图一下面一根虚线表示的SPI〔效劳提供者接口, Service Provider Interface〕也是统一的。

Java编程实现获取mp3时长及播放mp3文件的方法

Java编程实现获取mp3时长及播放mp3文件的方法

Java编程实现获取mp3时长及播放mp3⽂件的⽅法本⽂实例讲述了Java编程实现获取mp3时长及播放mp3⽂件的⽅法。

分享给⼤家供⼤家参考,具体如下:所需包为和。

import java.io.BufferedInputStream;import java.io.File;import java.io.FileInputStream;import org.jaudiotagger.audio.AudioFileIO;import org.jaudiotagger.audio.mp3.MP3AudioHeader;import org.jaudiotagger.audio.mp3.MP3File;import javazoom.jl.player.Player;public class MusicUtil {public static void play(String position) {try {BufferedInputStream buffer = new BufferedInputStream(new FileInputStream(position));Player player = new Player(buffer);player.play();} catch (Exception e) {e.printStackTrace();}}public static int getDuration(String position) {int length = 0;try {MP3File mp3File = (MP3File) AudioFileIO.read(new File(position));MP3AudioHeader audioHeader = (MP3AudioHeader) mp3File.getAudioHeader();// 单位为秒length = audioHeader.getTrackLength();return length;} catch (Exception e) {e.printStackTrace();}return length;}public static void main(String[] args) {String position = "逃跑计划-夜空中最亮的星.mp3";getDuration(position);play(position);}}更多java相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》及《》。

java播放mp3oggapeflac音乐

java播放mp3oggapeflac音乐

java播放mp3oggapeflac音乐java播放mp3/ogg/ape/flac音乐博客分类:•游戏音乐好吧,又要说一句了,java真是无所不能。

用java sound api播放wav, aiff, au, snd文件想必大家都已经知道了,这些格式是jdk原生支持的。

本文将介绍如何播放mp3/ogg/ape/flac音乐。

其实都是批发来的,我只是搬运工Σ( ° △ °|||)︴1. 先上代码Java代码1.import java.io.File;2.import java.io.IOException;3.4.import javax.sound.sampled.AudioFormat;5.import javax.sound.sampled.AudioInputStream;6.import javax.sound.sampled.AudioSystem;7.import javax.sound.sampled.DataLine;8.import javax.sound.sampled.SourceDataLine;9.10.public class AudioFilePlayer {11.12.public static void main(String[] args) {13.final AudioFilePlayer player = new AudioFilePlayer ();14.player.play("D:/xiaomi.ogg");15.//player.play("D:/01 - 謎解きはディナーのあとで.mp3");16.//player.play("D:/周杰伦-青花瓷.APE");17.//player.play("D:/周杰伦 - 听妈妈的话.flac");18.}19.20.public void play(String filePath) {21.final File file = new File(filePath);22.23.try {24.final AudioInputStream in = AudioSystem.getAudioIn putStream(file);25.26.final AudioFormat outFormat = getOutFormat(in.getF ormat());27.final info = new (SourceDat aLine.class, outFormat);28.29.final SourceDataLine line = (SourceDataLine) AudioSys tem.getLine(info);30.31.if (line != null) {32.line.open(outFormat);33.line.start();34.stream(AudioSystem.getAudioInputStream(outFormat, in), line);35.line.drain();36.line.stop();37.}38.39.} catch (Exception e) {40.throw new IllegalStateException(e);41.}42.}43.44.private AudioFormat getOutFormat(AudioFormat inFo rmat) {45.final int ch = inFormat.getChannels();46.final float rate = inFormat.getSampleRate();47.return new AudioFormat(AudioFormat.Encoding.PCM_ SIGNED, rate, 16, ch, ch * 2, rate, false);48.}49.50.private void stream(AudioInputStream in, SourceDataL ine line)51.throws IOException {52.final byte[] buffer = new byte[65536];53.for (int n = 0; n != -1; n = in.read(buffer, 0, buffer.length)) {54.line.write(buffer, 0, n);55.}56.}57.}你没有看错,代码其实很简单,就是普通的java sound api,和原来播放wav, aiff, au, snd没什么两样。

网页音乐播放器代码

网页音乐播放器代码

插音乐播放器<embed src=这里填写你要放的歌曲地址 width=216 height=39 autostart="true"loop="false" id=MediaPlayer name="MediaPlayer">一、文字标记基本代码如下:<P align=center><FONT color=#0066ff face=隶书 size=5>插入文字</FONT></P>align=center 表示字体居中,可选值为居右(right)居左(left)color=颜色代码face=字体常用字体为:宋体.黑体.楷体.仿宋.幻缘.新宋体.细明体等size=字体大小,这里的最大值为7 取值越大文字就越大1.字体变化 <font>..........</font>a.字体大小 <font size=#>..........</font> #=1~7;数字愈大字也愈大b.指定字型 <font face="字体名称">..........</font>c.文字颜色 <font color=#rrggbb>..........</font>rr:表红色(red)色码gg:表绿色(green)色码bb:表蓝色(blue)色码rrggbb也可用6位颜色代码数字2.粗体字 <b>..........</b>3 字体加粗<STRONG>..........</STRONG>和<b>标签差不多的效果4.换行(也称回车) <br>5.分段标记 <p>文字的对齐方向 <p align="#"> #号可为 left:表向左对齐(预设值) center:表向中对齐 right:表向右对齐 P.S.<p align="#">之后的文字都会以所设的对齐方式显示,直到出现另一个<p align="#">改变其对齐方向,遇到<hr>或<h#>标签时会自动设回预设的向左对齐。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

package com.ding.player;import java.io.File;import java.io.IOException;import javax.sound.sampled.AudioFormat;import javax.sound.sampled.AudioInputStream;import javax.sound.sampled.AudioSystem;import javax.sound.sampled.DataLine;import javax.sound.sampled.SourceDataLine;public class Player {private String path;//文件路径private String name;//文件名称private AudioFormat audioFormat;//播放格式private AudioInputStream audioInputStream;//音乐播放输入流private SourceDataLine sourceDataLine;// 播放设备private boolean isStop = false;// 播放停止标志/*** 创建对象时需要传入播放路径及文件名称* @param path* @param name*/public Player(String path ,String name) {this.path = path; = name;}/*** 播放音乐*/public void play() {File file = new File(path + name);try {//获取音乐播放流audioInputStream = AudioSystem.getAudioInputStream(file);//获取播放格式audioFormat = audioInputStream.getFormat();/*System.out.println("取样率:"+ audioFormat.getSampleRate());Map map = audioFormat.properties();Iterator it = map.entrySet().iterator();while(it.hasNext()) {Map.Entry m = (Entry) it.next();System.out.println(m.getKey()+":"+m.getValue());}*///其它格式音乐文件处理if(audioFormat.getEncoding() !=AudioFormat.Encoding.PCM_SIGNED) {audioFormat = newAudioFormat(AudioFormat.Encoding.PCM_SIGNED, audioFormat.getSampleRate(), 16, audioFormat.getChannels(), audioFormat.getChannels()*2,audioFormat.getSampleRate(), audioFormat.isBigEndian());audioInputStream =AudioSystem.getAudioInputStream(audioFormat, audioInputStream);}//打开输出设备 dataLineInfo = new(SourceDataLine.class,audioFormat,AudioSystem.NOT_SPECIFIED);sourceDataLine = (SourceDataLine)AudioSystem.getLine(dataLineInfo);sourceDataLine.open(audioFormat);sourceDataLine.start();//启动播放线程new Thread() {@Overridepublic void run() {try {int n = 0;byte tempBuffer[] = new byte[320];while(n != -1) {//停止播放入口,如果isStop被置为真,结束播放if(isStop) break;//将音乐输入流的数据读入tempBuffer缓存n = audioInputStream.read(tempBuffer,0 , tempBuffer.length);if(n>0) {//将缓存数据写入播放设备,开始播放sourceDataLine.write(tempBuffer, 0, n);}}audioInputStream.close();sourceDataLine.drain();sourceDataLine.close();} catch (IOException e) {e.printStackTrace();throw new RuntimeException();}}}.start();} catch (Exception e) {e.printStackTrace();System.exit(0);throw new RuntimeException();}}/*** 停止播放*/public void stop() {try {isStop = true;audioInputStream.close();sourceDataLine.drain();sourceDataLine.close();} catch (IOException e) {e.printStackTrace();}}}package com.ding.UI;import java.awt.BorderLayout;import java.awt.Color;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.File;import java.util.Vector;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFileChooser;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTable;import javax.swing.filechooser.FileNameExtensionFilter;import javax.swing.table.DefaultTableModel;import com.ding.player.Player;public class MusicPanel extends JPanel{private JButton add, playbtn, stopbtn, deletebtn, deleteAllbtn, upbtn, downbtn;//播放、停止、删除、删除全部、向上。

向下按钮private JTable table; //歌曲信息表private Player player;public MusicPanel() {initCompont();}/*** 初始化界面*/private void initCompont() {//各个按钮赋初始值add = new JButton("导入");playbtn = new JButton("试听");stopbtn = new JButton("停止");deletebtn = new JButton("单曲删除");deleteAllbtn = new JButton("全部删除");upbtn = new JButton(new ImageIcon("img/up.png"));downbtn = new JButton(new ImageIcon("img/down.png"));//导入按钮点击设置add.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {addFile();}});//试听按钮点击设置playbtn.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {if(player!=null) {player.stop();player = null;}int rowNum = table.getSelectedRow();if(rowNum != -1) {player = new Player((String)table.getValueAt(rowNum, 1) + "\\" ,(String)table.getValueAt(rowNum, 0));System.out.println((String)table.getValueAt(rowNum,1)+"\\"+(String)table.getValueAt(rowNum, 0));player.play();}}});//停止按钮点击设置stopbtn.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {if(player != null) {player.stop();player = null;}}});//单曲删除按钮点击设置deletebtn.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {int rowNum = table.getSelectedRow();if(rowNum != -1) {((DefaultTableModel)table.getModel()).removeRow(rowNum);}}});//删除全部按钮点击设置deleteAllbtn.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {for(int i = table.getRowCount()-1; i>=0; i--) {((DefaultTableModel)table.getModel()).removeRow(i);}}});downbtn.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {int n = table.getSelectedRow() + 1;if(n < table.getRowCount()) {table.setRowSelectionInterval(n, n);}}});upbtn.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {int n = table.getSelectedRow() - 1;if(n < -1) {n = table.getRowCount() - 1;}if(n >= 0) {table.setRowSelectionInterval(n, n);}}});//添加各个按钮JPanel btnPanel = new JPanel();btnPanel.add(add);btnPanel.add(playbtn);btnPanel.add(stopbtn);btnPanel.add(deletebtn);btnPanel.add(deleteAllbtn);btnPanel.add(upbtn);btnPanel.add(downbtn);this.setLayout(new BorderLayout());this.add(btnPanel, BorderLayout.NORTH);Vector<String> tableContent = new Vector<String>(); //表格内容Vector<String> columnName = new Vector<String>();//歌曲信息表格列名称columnName.add("歌曲名称");columnName.add("存放路径");//设置tabletable = new JTable(tableContent, columnName);table.setSelectionBackground(Color.blue);table.setSelectionForeground(Color.LIGHT_GRAY);this.add(new JScrollPane(table), BorderLayout.CENTER);this.setSize(300, 210);}/*** 添加文件*/private void addFile() {JFileChooser fc = new JFileChooser();//设置选入文件类型FileNameExtensionFilter filter = new FileNameExtensionFilter("mp3 or wav file", "mp3","wav","MP3","WAV");fc.setFileFilter(filter);fc.setFileSelectionMode(JFileChooser.FILES_ONLY);//设置只选择文件fc.setMultiSelectionEnabled(true);//设置选择多个文件int intRetVal = fc.showDialog(this, "打开");//获取文件并添加到tableif(intRetVal == JFileChooser.APPROVE_OPTION) {File[] file = fc.getSelectedFiles();String name;for(File var : file) {name = var.getName().toLowerCase();if( name.endsWith(".mp3")|| name.endsWith(".wav")) {this.addMusicItem(var.getName() ,var.getParentFile().getAbsolutePath());}}}}/*** table的行中添加音乐文件名称name,音乐文件路径path* @param name* @param path*/private void addMusicItem(String name, String path ) {Vector<String> rowData = new Vector<String>();rowData.add(name);rowData.add(path);//rowData.add(time);DefaultTableModel tabMod= (DefaultTableModel) table.getModel();tabMod.addRow(rowData);}}。

相关文档
最新文档