java文件流null_JAVA 获取资源文件对象为NULL

今天,写一个添加背景音乐的方法时,在导入当前文件夹下的音乐时中始终出现,以下的异常,Exception in thread "main" java.lang.NullPointerException

文件存储位置

存放在当前的modlue目录下,格式为wav.

bb00fd346c9189ec942aaeffc765bdeb.png

源代码private void playBGM(){

try {

//创建了一个播放器;

Clip bgm= AudioSystem.getClip();

System.out.println(this.getClass().getClassLoader());

InputStream is=this.getClass().getClassLoader().getResourceAsStream("bgm.wav");

//ClassLoader()类加载器,找到类,在找到类的加载器在加载;

AudioInputStream ais=AudioSystem.getAudioInputStream(is);

bgm.open((ais));//打开音频;

bgm.start();

} catch (LineUnavailableException e) {

e.printStackTrace();

} catch (UnsupportedAudioFileException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

}

主要是在获取音频流对象时,始终获取到的是NULLInputStream is=this.getClass().getClassLoader().getResourceAsStream("bgm.wav");

这是什么问题?,是文件存储位置不正确吗,上面的获取文件方法,应该是以当前目录为根目录向下寻找吧

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/271848.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

程序员如何快速消除自己的知识短板?

在程序员的职业生涯当中,知识短板将会是你职业生涯发展的瓶颈。只要你能够消除这些短板,这对你的职业发展会大有裨益。本篇文章主要给大家分享一下如何解决自己工作当中的知识短板。希望对大家能有些帮助。1、关于知识短板的概念理解我个人认为所谓的知识…

HashMap默认大小和扩容后的大小

put添加的元素Entry就是数组中的元素,每个Map.Entry其实就是一个key-value对,它持有一个指向下一个元素的引用,这就构成了链表。 创建HashMap对象默认情况下,数组大小为16。 开始扩容的大小原来的数组大小*loadFactor。 扩容后…

程序员效率:职业倦怠的理解

作为程序员保持高效的工作效率最大的挑战之一就是身体和心理上产生的倦怠。这个是非常常见的,比如刚开始你自己做一个新项目的时候,项目刚开始,我们总是充满激情、精力旺盛。大多数情况随着时间的推移,我们的激情慢慢减退&#xf…

HashMap和ArrayList初始大小和扩容后的大小

创建HashMap对象默认情况下,数组大小为16。 开始扩容的大小原来的数组大小*loadFactor。 扩容后大小是原来的2倍,其中加载因子loadFactor的默认值为0.75,这个参数可以再创建对象时在构造方法中指定。 例如: 16*0.7512&#xf…

程序员效率:如何合理的分解任务

有这样一句名言:要吃掉一头大象,每次吃一口。—— 克雷顿艾布拉姆斯(Creighton Abrams)这句名言给我们的启示就是:看起来非常艰巨的任务,不能一蹴而就,需要进行任务分解,一步一步把它…

键值的 key 和 value 允许为null吗

总结: HashMap对象的key、value值均可为null。HahTable对象的key、value值均不可为null。两者的的key值均不能重复,若添加key相同的键值对,后面的value会自动覆盖前面的value,但不会报错。 例子 可以看到添加key相同的键值对&am…

程序员:你的业余时间是怎么被浪费掉的?

作为一名程序员如何有效的管理自己的业余时间,会成为和别人拉开差距的重要因素。当然你不能把每天的每一分钟都充分利用起来。这个目标不可能实现。我们可以做到的是找到自己在哪一方面浪费的时间最多,然后逐渐的去消除它。如果你可以消除掉一到两个方面…

数据库文档生成工具V1.0

❤️作者主页:IT技术分享社区 ❤️作者简介:大家好,我是IT技术分享社区的博主,从事C#、Java开发九年,对数据库、C#、Java、前端、运维、电脑技巧等经验丰富。 ❤️个人荣誉: 数据库领域优质创作者🏆&#x…

volatile关键字和AtomicInteger

在Java中,线程部分是一个重点,本篇文章说的JUC也是关于线程的。JUC就是java.util .concurrent工具包的简称。这是一个处理线程的工具包,JDK 1.5开始出现的。下面一起来看看它怎么使用。 一、volatile关键字与内存可见性 1、内存可见性&…

前端:JS几种常见的排序

❤️作者主页:IT技术分享社区 ❤️作者简介:大家好,我是IT技术分享社区的博主,从事C#、Java开发九年,对数据库、C#、Java、前端、运维、电脑技巧等经验丰富。 ❤️个人荣誉: 数据库领域优质创作者🏆&#x…

在线语音转文字工具V1.0

在线语音转文字工具V1.0介绍在线语音转文字工具V1.0,采用C#开发语音基于Framework4.5开发,主要采用百度语音识别SDK,实现了在线文本转语音的功能,可以转换后直接播放。有需要的朋友可以下载学习一下。如果遇到问题的可以留言或者私…

Java通过Netty,实现Websocket消息推送只需要简单几步

前言 曾几何时,不知道大家有没有在项目里遇到过需要服务端给客户端推送消息的需求,是否曾经苦恼过、纠结过,我们知道要想实现这样的需求肯定离不开websocket长连接方式,那么到底是该选原生的websocket还是更加高级的netty框架呢&a…

java 创建者设计模式_Java设计模式之创建者模式分享热爱编程,程序人生

PS:今天的23中设计模式中的创建者方式,至此告一段落。我今天带来的技术分享为创建者模式以及原型模式。当然在Java中这两种方式很常见,只不过我们写的次数确实有点低而已,但是这不是我不学它的借口!!!创建者…

一文读懂电感器的原理、结构、作用及分类

电感器是能够把电能转化为磁能而存储起来的元件。电感器的结构类似于变压器,但只有一个绕组。电感器具有一定的电感,它只阻碍电流的变化。 如果电感器在没有电流通过的状态下,电路接通时它将试图阻碍电流流过它;如果电感器在有电流…

final关键字与static对比

final关键字与static对比 static关键字修饰变量时,会使该变量在类加载时就会被初始化,不会因为对象的创建再次被加载,当变量被static 修饰时就代表该变量只会被初始化一次 例如图中所示,被static修饰的变量j,虽然创建…

macpro生成公钥并查看公钥

打开macpro的终端输入以下命令: $ cd ~/.ssh $ ls 此时发现没有那个id_rsa.pub文件,没有,就需要创建公钥 用ssh-keygen创建公钥 此时已经有了

Spring Cloud Feign 使用Apache的HTTP Client替换Feign原生httpclient

http 连接池能提升性能 http 的背景原理 a. 两台服务器建立 http 连接的过程是很复杂的一个过程,涉及到多个数据包的交换,并且也很耗时间。 b. Http 连接需要的 3 次握手 4 次分手开销很大,这一开销对于大量的比较小的 http 消息来说更大。…

自媒体工具:文本内容转音频文件实用小工具

目录 ​编辑 1、软件介绍 2、软件技术框架 3、使用说明 4、核心代码文件 5、注意事项 1、软件介绍 文本内容转转音频文件小工具,采用C#编程语言,基于Framework4.5开发,主要采用百度语音识别SDK,实现了在线文本内容转音频文件的功能…