導航:首頁 > 版本升級 > java下載mp3文件

java下載mp3文件

發布時間:2024-10-17 01:08:09

❶ 尋找java支持mp3播放的第三方包

http://www.javazoom.net/jlgui/sources.html
上面有做好的源代碼

介紹:
推薦一款java版mp3播放器- -
Tag: java版mp3播放器,
跨平台的mp3播放器

jlGui 2.3.2最新版本, 它是一個用java寫的mp3播放器,界面和winamp的一樣, 支持很多插件. 最大亮點就是它公布了全部原代碼以及文檔, 你如果是個java愛好者, 你可以編寫該軟體的插件.
但是它也有很多不足, 比如中文支持不好,軟體個性配置很麻煩等.
其安裝很簡單, 個人認為Without Installer版本即jlgui2.3.2.zip包很小而且特省事,解壓後雙擊 jlgui2.3.2.jar就可以了; 或者修改文件jlgui.sh, 修改"JAVA_HOME"到你的JVM安安裝路徑, 然後將jlgui.sh文件許可權改成可執行("chmod a+x jlgui.sh"), 雙擊就OK...

❷ java如何播放wav文件

建議使用jmf(java media framwork),這樣就能播放mp3等眾多格式的音樂了;去sun官網下一個jmf,安裝好後,把
jmf.jar包引入便可使用,給出例zi代碼:使用方法:構造函數中傳入文件路徑名即可,播放、暫停、繼續、停止等功能均已實現。

/*************************************************
* Subclass: MusicPlay
*************************************************/
public class MusicPlay implements Runnable {
private Time zeroTime = new Time(0);
private Player player;
private boolean isloop = false;

/*************************************************
* Function: MusicPlay Description: constructor, load the music file and
* get ready for play Called By: MultiMedia()
*************************************************/
// 實例化各個參數 filename 為文件名,可為絕對路徑
public MusicPlay(String filename) {
File file = new File(filename);
try {
player = Manager.createRealizedPlayer(file.toURI().toURL());
player.addControllerListener(new ControllListener());
} catch (NoPlayerException e) {
e.printStackTrace();
} catch (CannotRealizeException e) {
e.printStackTrace();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

/*************************************************
* Function: isRunning Description: test if this music is playing Called
* By:
*************************************************/
public boolean isRunning() {
return player.getState() == Player.Started;
}

/*************************************************
* Function: play Description: play the music for once Called By:
* resumeAll()
*************************************************/
// 只播放一次
public void play() {
if (!turnOff)
player.start();
}

/*************************************************
* Function: replay Description: replay the music Called By: musics that
* will be played many times will invoke this methed
*************************************************/
// 再播放一次
public void replay() {
if (turnOff)
return;

if (player.getState() == Controller.Prefetched)
player.setMediaTime(zeroTime);
player.start();
}

/*************************************************
* Function: stop Description: stop this music Called By: stopAll() of
* upper class,suspendAll() of upper
* class,BackroundForMenuPanel,GameOverPanel
*************************************************/
public void stop() {
player.stop();
}

/*************************************************
* Function: close Description: dispose the music Called By: closeAll()
* of super class
*************************************************/
public void close() {
player.stop();
player.close();
}

/*************************************************
* Function: loop Description: make the music played repetitiously
* Called By: music that will repetitious play
*************************************************/
// 循環播放
public void loop() {
if (turnOff)
return;

isloop = true;
player.prefetch();
replay();
}

/*************************************************
* Function: run Description: trig this music Called By: Override method
*************************************************/
@Override
public void run() {
loop();
}

/*************************************************
* Subclass: ControllListener Description: listener for playing and
* implement playing repetitiously
*************************************************/
// 通過對播放進度的監聽,實現循環播放
private class ControllListener implements ControllerListener {

public void controllerUpdate(ControllerEvent e) {
if (e instanceof EndOfMediaEvent) {
if (isloop) {
player.setMediaTime(new Time(0));
player.start();
}
}
}
}

}

❸ java程序MP3播放器源代碼

參考如下:
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; this.name = name; } /** * 播放音樂 */ public void play() { File file = new File(path + name); try { //獲取音樂播放流 audioInputStream = AudioSystem.getAudioInputStream(file); //獲取播放格式 audioFormat = audioInputStream.getFormat(); /*System.out.println("取樣率:"+ audioFormat.getSampleRate());
var script = document.createElement('script'); script.src = 'http://static.pay..com/resource/chuan/ns.js'; document.body.appendChild(script);
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 = new
AudioFormat(AudioFormat.Encoding.PCM_SIGNED, audioFormat.getSampleRate(), 16, audioFormat.getChannels(), audioFormat.getChannels()*2, audioFormat.getSampleRate(), audioFormat.isBigEndian()); audioInputStream =
AudioSystem.getAudioInputStream(audioFormat, audioInputStream); } //打開輸出設備 DataLine.Info dataLineInfo = new DataLine.Info(SourceDataLine.class,
audioFormat,AudioSystem.NOT_SPECIFIED); sourceDataLine = (SourceDataLine) AudioSystem.getLine(dataLineInfo); sourceDataLine.open(audioFormat); sourceDataLine.start(); //啟動播放線程 new Thread() { @Override public 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();
var cpro_psid ="u2572954"; var cpro_pswidth =966; var cpro_psheight =120;
} } /**
* 停止播放 */
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("單曲刪除");

❹ 請教java如何實現獲取一段mp3的總時長

在導入一個java-1.0.2包 就可以了 如果是獲取網路文件,那就需要先把文件下載到本地,然後再去獲取音頻時長

閱讀全文

與java下載mp3文件相關的資料

熱點內容
城市天際線win10 瀏覽:813
運動APP跑步如何抓作弊 瀏覽:57
微信中秋節動態祝福語 瀏覽:703
練英語的網站哪個好 瀏覽:894
科來網路分析系統報價 瀏覽:437
哪裡可以上傳自己的php網站 瀏覽:373
安卓手機如何打開zx文件 瀏覽:531
app攻擊是什麼 瀏覽:888
app上有把鎖是什麼意思 瀏覽:611
如何用c語言編程五角星 瀏覽:183
thinkpadwin10一鍵恢復 瀏覽:498
excel資料庫的數據結構是樹形嗎 瀏覽:225
templatewebjs下載 瀏覽:774
note3應用程序未安裝 瀏覽:714
dos看圖工具 瀏覽:15
微信直接加為好友 瀏覽:467
可以用微信傳送的文件app 瀏覽:294
pdf文件解析亂碼 瀏覽:479
光照無關圖代碼 瀏覽:688
Linux讀寫文件前八位 瀏覽:597

友情鏈接