Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/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 为什么这个WAV文件不能播放?它给了我一个NullPointerException_Java_Loops_Wav - Fatal编程技术网

Java 为什么这个WAV文件不能播放?它给了我一个NullPointerException

Java 为什么这个WAV文件不能播放?它给了我一个NullPointerException,java,loops,wav,Java,Loops,Wav,为什么这不起作用?它给了我一个NullPointerException?我找到了它不工作的原因!我在'res/music.wav'之前放了/使文件加载系统认为我是从一个驱动器加载的,例如C:/F:/,但在此之前没有任何东西,所以它认为它是从一个不存在的空驱动器加载的。你的音频文件放在哪里?这里有一个线索:异常包括一个行号。查看该行或告诉我们行号,并指出它在您包含的代码中的行。我假设错误位于as1=AudioSystem.getAudioInputStream…,因为文件路径可能是错误的。你的.w

为什么这不起作用?它给了我一个NullPointerException?

我找到了它不工作的原因!我在'res/music.wav'之前放了/使文件加载系统认为我是从一个驱动器加载的,例如C:/F:/,但在此之前没有任何东西,所以它认为它是从一个不存在的空驱动器加载的。

你的音频文件放在哪里?这里有一个线索:异常包括一个行号。查看该行或告诉我们行号,并指出它在您包含的代码中的行。我假设错误位于as1=AudioSystem.getAudioInputStream…,因为文件路径可能是错误的。你的.wav文件在哪里?这个问题是为了利用赏金-->
package net.NitroCruze.mrpg.baseengine.music;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.sound.sampled.DataLine;
import javax.sound.sampled.Line;
import javax.sound.sampled.LineUnavailableException;

public class CPSound implements Runnable{
    AudioInputStream as1;
    AudioFormat af;
    Clip clip1;
    DataLine.Info info;
    Line line1;

    public CPSound() {
        Thread soundThread;
        soundThread = new Thread(this, "Sound");
        soundThread.start();
    }

    public void play() {
        try{
            as1 = AudioSystem.getAudioInputStream(new FileInputStream(new File("/res/music.wav")));
            af = as1.getFormat();
            clip1 = AudioSystem.getClip();
            info = new DataLine.Info(Clip.class, af);
            line1 = AudioSystem.getLine(info);
        }
        catch(Exception e)
        {
        }

        if ( ! line1.isOpen() )
        {
            try
            {
                clip1.open(as1);
            }
            catch (Exception e)
            {  
            }
            clip1.loop(Clip.LOOP_CONTINUOUSLY);
            clip1.start();
        }
    }

    public void run()
    {
        play();
    }
}