java图片浏览器的音乐播放,java音乐播放器界面

发布时间:2022-11-17

本文目录一览:

  1. 关于Java音乐播放的问题,出现下图的情况如何解决
  2. Java怎么实现音乐播放
  3. JAVA 实现音频播放
  4. 怎样在java中播放音乐
  5. 请教java高手们,帮我写一个java编写的图片浏览器,功能如下:有自动浏览功能,每隔几秒图片自动翻页。用
  6. java web上如何实现播放音乐??

关于Java音乐播放的问题,出现下图的情况如何解决

你使用了过时的类调用了过时的方法。已经不被推荐使用,所以eclipse会划线提示。 以 toURL() 为例,直接从File对象获得链接,但是 toURL 方法不会对特殊字符编码。但是 toURI 方法会进行编码。 所以现在一般的解决方案是:

file.toURI().toURL();

解决办法:使用 javafx.scene.media.AudioClip,该类功能简单:播放和停止声音。没有暂停、时间长度、资料、均衡器等功能。 参考代码:

import java.io.File;
import javafx.scene.media.AudioClip; // 导包
public class TestAudioClip {
    public static void main(String[] args) throws Exception { // 抛出异常
        AudioClip audioClip = new AudioClip(new File("D:\\宣传片音效.mp3").toURI().toURL().toString());
        audioClip.play(0.8); // 设置以80%的音量播放
        // 设置一个循环,保证播放完了声音才退出程序
        while (true) {
            if (!audioClip.isPlaying()) { // 如果停止了播放,就退出while循环
                break;
            }
        }
        // while(audioClip.isPlaying()) {} // 这样写更简洁
    }
}

Java怎么实现音乐播放

Java SWT实现播放音乐代码如下:

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("有错误!");
    }
}

JAVA 实现音频播放

这个程序只要写对了音乐文件的URL地址,例如:

new URL("file:/C:/tmp/1/Windows Ding.wav");

就可以播放音乐,除了可以播放 .wav 格式的音乐,还可以播放 .au 格式的音乐。 另外,如果你不希望音乐循环播放,你可以去掉 audio1.loop(); 这一语句。

import java.applet.AudioClip;
import java.net.MalformedURLException;
import java.net.URL;
import javax.swing.JFrame;
public class D extends JFrame {
    D() {
        setSize(200, 200);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
        URL codebase = null;
        try {
            codebase = new URL("file:/C:/tmp/1/Windows Ding.wav");
        } catch (MalformedURLException e) {
            e.printStackTrace();
        }
        AudioClip audio1 = Applet.newAudioClip(codebase);
        audio1.loop();
    }
    public static void main(String[] args) {
        new D();
    }
}

怎样在java中播放音乐

使用 play() 方法进行播放,loop() 方法循环播放,stop() 方法停止播放。 实际例子:

File file1 = new File("src\\music\\11.wav");
AudioClip sound1;
sound1 = Applet.newAudioClip(file1.toURL());
sound1.play();

这样就实现了播放音乐的功能,注意J2SE默认只支持 .wav 格式的音频。

请教java高手们,帮我写一个java编写的图片浏览器,功能如下:有自动浏览功能,每隔几秒图片自动翻页。用

改编的 CopyOfImageViewer.java,打开一个有图片的文件夹就可浏览了。 MP3播放相关库到:[下载链接] 下载。 将下载到的zip文件里的 jl1.0.1.jar 复制到 JDK目录下的 jre/lib/ext/ 目录里即可。 将源代码 main 方法里的 playMp3("d:\\bad.mp3"); 改成自己的地址,换种方法BMP是可以支持的,这里不行暂不讨论。

import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javazoom.jl.player.Player;
public class CopyOfImageViewer implements ActionListener, Runnable {
    JPanel bts;
    JLabel pl;
    JScrollPane jsp;
    JButton cf, start, next, prev, stop;
    JFrame f;
    JFileChooser fc;
    File[] sf;
    int index;
    Thread auto;
    boolean autoFlag;
    int delay = 5 * 1000;
    // 这里就是GUI布局
    CopyOfImageViewer() {
        pl = new JLabel();
        pl.setHorizontalAlignment(JLabel.CENTER);
        jsp = new JScrollPane(pl);
        start = new JButton("start");
        next = new JButton("");
        prev = new JButton("");
        stop = new JButton("stop");
        bts = new JPanel(new FlowLayout(FlowLayout.CENTER));
        bts.add(start);
        bts.add(prev);
        bts.add(next);
        bts.add(stop);
        cf = new JButton("Select a picture folder");
        fc = new JFileChooser();
        fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
        f = new JFrame();
        f.setDefaultCloseOperation(3);
        f.getContentPane().add(cf, "North");
        f.getContentPane().add(jsp, "Center");
        f.getContentPane().add(bts, "South");
        f.setSize(400, 300);
        f.setLocationRelativeTo(null);
        f.setVisible(true);
        // 给按钮加入事件侦听器
        start.addActionListener(this);
        next.addActionListener(this);
        prev.addActionListener(this);
        stop.addActionListener(this);
        cf.addActionListener(this);
        auto = new Thread(this);
        auto.start();
    }
    public static void main(String[] args) {
        try {
            UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
        } catch (Exception e) {
            try {
                UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
            } catch (Exception e2) {}
        }
        new CopyOfImageViewer();
        playMp3("d:\\bad.mp3");
    }
    // 简单MP3播放
    private static void playMp3(String file) {
        try {
            Player p = new Player(new FileInputStream(file));
            p.play();
        } catch (Exception e) {}
    }
    // 处理各按键事件
    public void actionPerformed(ActionEvent e) {
        Object src = e.getSource();
        if (src == cf) {
            int o = fc.showOpenDialog(f);
            if (o == JFileChooser.APPROVE_OPTION) {
                sf = fc.getSelectedFile().listFiles(new FilenameFilter() {
                    // 合法的文件后缀
                    String[] suf = {".PNG", ".GIF", ".JPG"};
                    public boolean accept(File dir, String name) {
                        name = name.toUpperCase();
                        for (int i = 0; i < suf.length; i++)
                            if (name.endsWith(suf[i])) return true;
                        return false;
                    }
                });
                if (sf.length > 0) {
                    index = 0;
                    showPic();
                }
            }
        }
        if (sf == null || sf.length == 0) return;
        if (src == start) startB();
        else if (src == stop) stopB();
        else if (src == next) next();
        else if (src == prev) prev();
    }
    void prev() {
        index = --index < 0 ? sf.length - 1 : index;
        showPic();
    }
    void next() {
        index = ++index >= sf.length ? 0 : index;
        showPic();
    }
    public void run() {
        while (true) {
            if (sf != null && sf.length > 0 && autoFlag) {
                try { Thread.sleep(delay); } catch (Exception e) {}
                next();
            }
            try { Thread.sleep(100); } catch (Exception e) {}
        }
    }
    private void stopB() {
        autoFlag = false;
    }
    private void startB() {
        autoFlag = true;
    }
    // 显示图片
    private void showPic() {
        if (sf == null || sf.length == 0) return;
        pl.setIcon(new ImageIcon(sf[index].getAbsolutePath()));
        System.out.println(sf[index].getAbsolutePath());
    }
}

java web上如何实现播放音乐??

这个应该很容易实现,你的意思是用户登录以后,如果用户的登录信息正确,就播放成功的歌曲,如果用户登录失败就播放失败之类的歌曲。 方法一: 一个登录页面,两个带有音乐的页面,这两个页面的所有内容是一样的,只是音乐的 href(路径)不一样,当成功就跳到成功的那个页面,失败就跳到失败的页面。 方法二: 写一个默认 href 指向成功音乐的页面,登录成功直接跳到这个界面,如果登录失败的话通过 JavaScript 修改本来的页面的 href,跳转过来的时候由于 href 改变了,所以亦不会播放默认的那首歌曲了。