Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 困惑于如何播放声音_Java - Fatal编程技术网

Java 困惑于如何播放声音

Java 困惑于如何播放声音,java,Java,我想做的很清楚,只需播放一个声音并暂停。问题是我不能暂停音乐。我找不到错误;我做错了什么 public class MainC extends JFrame implements ActionListener { int Copened,Cplay,Cstop,Csave,Cpause; AudioStream aStream; String Filename; File file; FileInputStream fis; public Ma

我想做的很清楚,只需播放一个声音并暂停。问题是我不能暂停音乐。我找不到错误;我做错了什么

public class MainC extends JFrame implements ActionListener {

    int Copened,Cplay,Cstop,Csave,Cpause;
    AudioStream aStream;
    String Filename;
    File file;

    FileInputStream fis;
    public MainC() {
        Filename="";
        txtname=new JTextField();
        chooser=new JFileChooser();
    }

    public void actionPerformed(ActionEvent e) {
        if(e.getSource()==btnopen){
            chooser.showOpenDialog(this);
            file=chooser.getSelectedFile();
        }

        if(e.getSource()==btnPause){
            AudioPlayer.player.stop(fis);
        }
        if(e.getSource()==btnplay){
                fis=new  FileInputStream(file);
                aStream=new AudioStream(fis);
                AudioPlayer.player.start(aStream);

首先,您缺少了很多右括号,在声明变量之前使用了
fis
变量,并且在另一个
if
语句的范围内。您可以尝试将
fis
设置为类变量,这样可以解决此问题。不要使用来自“sun.audio”的类,因为它们不是Java公共API的一部分。关于Java声音的大量信息,请参阅。对于初学者来说,在Java中使用JDK提供的声音非常困难,使用类似的库可能更容易。变量名应该使用小写。此外,考虑使用<代码> EnUM<代码>而不是<代码> int >代码> > <代码>复制< <代码> > <代码> cPase<代码>等。有关Java编码标准,请参见此链接。向下滚动至第5.0节了解命名标准。