`

java中调用图片音频等文件的相对路径问题

    博客分类:
  • java
阅读更多
import javax.swing.ImageIcon;
import java.awt.Image;
import java.awt.Toolkit;
import java.io.File;
import java.applet.Applet;
import java.applet.AudioClip;

/**
*
* <p>Title: 获取资源</p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2008</p>
* <p>Company: </p>
* @author landix
* @version 1.0
*/
public class ResourceManager {
    //系统图片路径
    private static String IMAGE_RESOURCE_PATH = "com/landix/oamq/client/images/";
    //系统音频路径
    private static String SOUND_RESOURCE_PATH = "com/landix/oamq/client/sound/";
    //系统文件路径
    private static String FILE_RESOURCE_PATH = "";
    
    private ResourceManager() {
    }
    
    public static ImageIcon getIcon(String imageName) {
       if (imageName == null) return(null);
       ImageIcon icon = null;
       try {
                //通过类加载器加载图片资源,作为图标对象的参数
           icon = new ImageIcon(ResourceManager.class.getClassLoader()
                                                 .getResource(IMAGE_RESOURCE_PATH + imageName));
       } catch (Exception ex) {
          System.out.println ("### Exception in getIcon() : \r\n" + IMAGE_RESOURCE_PATH + imageName + " " + ex.toString());
       }

       return icon;
    }
    
    public static Image getImage(String imageName) {
        if (imageName == null) return(null);
        Image image = null;
        try {
                   //通过类加载器加载图片资源,作为图标对象的参数
        	   image = Toolkit.getDefaultToolkit().getImage(ResourceManager.class.getClassLoader()
                        .getResource(IMAGE_RESOURCE_PATH + imageName));
        } catch (Exception ex) {
           System.out.println ("### Exception in getIcon() : \r\n" + IMAGE_RESOURCE_PATH + imageName + " " + ex.toString());
        }

        return image;
     }
    
    public static AudioClip getSound(String soundName) {
        if (soundName == null) return(null);
        AudioClip wowo = null ;
        try {
          	  //通过类加载器加载声音资源,作为声音对象的参数
        	   wowo = Applet.newAudioClip(ResourceManager.class.getClassLoader()
                       .getResource(SOUND_RESOURCE_PATH + soundName));
        } catch ( Exception ex ) {
           System.out.println ("### Exception in getIcon() : \r\n" + SOUND_RESOURCE_PATH + soundName + " " + ex.toString());
        }

        return wowo;
     }
    
    public static File getFile(String fileName) {
        if (fileName == null) return(null);
        File file = null;
        try {
	 //通过类加载器加载文件资源,作为文件对象的参数
        	   file = new File(ResourceManager.class.getClassLoader()
                                                  .getResource(FILE_RESOURCE_PATH + fileName).toString());
        } catch (Exception ex) {
           System.out.println ("### Exception in getIcon() : \r\n" + FILE_RESOURCE_PATH + fileName + " " + ex.toString());
        }

        return file;
     }

}
分享到:
评论

相关推荐

    Java中使用Jacob实现Windows下语音合成并生成音频文件示例代码.rar

    4. **语音合成(Text-to-Speech, TTS)**:在Java中,我们可以通过Jacob调用`SpVoice.Speak()`方法,传入需要合成的文本字符串,让系统语音引擎将其读出来。还可以设置一些参数,如语速、音调等,以定制合成效果。 ...

    java任意音频格式转码

    7. **错误处理**:在实际开发中,必须对可能出现的各种异常进行处理,例如文件不存在、权限问题、ffmpeg命令执行失败等。 综上所述,Java结合ffmpeg在音频格式转换方面提供了灵活且强大的解决方案。通过理解上述...

    java调用window操作系统文本转语音并生成播放文件

    总之,Java调用Windows操作系统实现文本转语音并生成播放文件,涉及到JNI、COM组件、DLL编程、音频处理等多个方面,需要对Java和Windows API有深入理解。通过适当的技术选择和优化,可以创建出高效、灵活的文本转...

    java 调用windows的一些可执行文件

    4. **异常处理**:在调用外部程序时,可能会遇到找不到文件、权限问题等异常,需要进行适当的异常处理。例如,当命令执行失败时,`exec()`方法会抛出`IOException`。 5. **DatToWav.java**:根据提供的文件名,这...

    用java程序调用ffmpeg执行视频文件格式转换flv

    总结来说,通过Java调用FFmpeg和Mencoder进行视频格式转换,需要理解这两个工具的命令行语法,以及如何在Java中执行外部进程。此过程涉及到文件类型的检查、预处理转换(如果必要)、最终的格式转换以及错误处理,...

    科大讯飞语音识别java例子 输入音频文件输出音频文件中的内容可编辑的文字内容

    在Java中,可以使用JAVE(Java Audio Video Encoder)或者Java Sound API来处理音频文件。将音频数据转换为API所需的格式,并编码成Base64字符串,以便通过HTTP请求发送。 在发送请求后,API会返回一个JSON响应,...

    音频文件转换 java

    首先,我们要了解Java中的音频处理框架。Java Sound API(Java Sound Access)是Java标准版的一部分,它为音频播放、录制、合成以及文件格式处理提供了基础。这个API包括了多个包,如javax.sound.sampled,它是处理...

    java — Wave音频文件的属性获取及文件合成

    你可以根据实际情况调用`combineWAVs`函数,传入你需要合并的WAV文件路径,并指定一个目标合成文件的路径。 通过以上代码,你可以实现对WAVE文件的属性读取以及文件合成操作,这对于在Java项目中处理音频资源非常...

    java调用视频转换工具ffmpeg.zip

    Java调用视频转换工具FFmpeg是一项常见的任务,特别是在多媒体处理和流媒体服务中。FFmpeg是一个强大的跨平台命令行工具,用于转换、流化、编辑和处理音频和视频文件。在Java应用程序中集成FFmpeg,可以实现灵活的...

    java+ffmpeg视频、音频转码

    通过以上分析,我们可以看出这个项目的核心是利用Java调用FFmpeg实现视频和音频的转码功能,涉及到多媒体处理、文件操作、系统调用等多个方面。对于开发者来说,理解FFmpeg的工作原理以及如何在Java中有效地利用它是...

    java播放视频音频文件.rar

    文档中的 "java播放视频音频文件.doc" 可能包含了更详细的步骤、示例代码或者关于如何处理特定问题的指南,如错误处理、播放进度控制和用户界面集成等。在实际开发中,你可能需要结合这个文档来获取更全面的信息。 ...

    浏览文件 获取文件路径

    Java中,`java.io.File`类提供了文件和目录操作的方法,而`Files`类则包含了一些高级的文件操作。 在获取文件路径后,我们可能还需要进行一些安全检查,比如权限验证,确保程序有权限访问所选文件。此外,如果需要...

    音频文件转码java开发,基于jave开源框架

    在Java中使用Jave进行音频转码,主要包括以下步骤: - 引入Jave库:将Jave的jar文件添加到项目的类路径中。 - 创建`Encoder`对象:根据目标格式创建相应的编码器对象。 - 设置转码参数:如目标比特率、采样率、...

    基于ffmpeg的音频处理Java SDK

    在Java中封装ffmpeg,可以为开发者提供更方便的API,简化音频处理的复杂性。 ### 1. 批量剪切mp3音频资源 批量剪切mp3音频资源是一项常见的需求,例如,可能需要将一个长篇的音频文件分割成多个小片段。Java SDK...

    Java播放本地声音,实现系统报警

    - 在加载音频文件的过程中可能会遇到一些异常,如文件不存在或者路径错误等。因此,我们需要捕获并处理`MalformedURLException`异常。 #### 示例代码解析 ```java import java.applet.AudioClip; import java.io....

    用java调用科大讯飞的离线语音识别dll实现离线识别

    在本文中,我们将深入探讨如何使用Java调用科大讯飞的离线语音识别DLL来实现Windows系统的离线语音识别功能。首先,我们要理解几个关键概念:JNA(Java Native Access)是Java平台上的一个库,它允许Java代码直接与...

    java 数据库中图片文件的存取

    2. **文件系统存储**:另一种方法是将图片文件存储在文件系统中,然后在数据库中仅存储文件路径。这种方法的优点在于数据库负担较小,但需要管理文件系统的同步问题。 3. **云存储服务**:现代应用可能会选择将图片...

    java,Blob字段操作,将图片或者文件保存到数据库中.zip

    在Java编程中,Blob(Binary Large Object)是用于存储大量二进制数据的数据类型,常被用在数据库中保存图片、文件等非文本信息。本教程将深入探讨如何使用Java进行Blob字段的操作,以实现将图片或文件保存到数据库...

    JAVA 调用摄像头

    在Java中调用摄像头,JMF是一个重要的工具,它提供了API来管理多媒体设备,如摄像头,以及处理媒体数据。`jmf-2_1_1e-windows-i586`是JMF的一个特定版本,适用于32位的Windows系统。 4. **SWF控件**: SWF...

    java_music.rar_java 音频播放_java音频_音频播放 java

    在Java编程语言中,处理音频文件播放是一项常见的任务,尤其在开发多媒体应用或者游戏时。本教程将深入探讨如何在Java环境中实现音频播放功能。"java_music.rar"这个压缩包包含了一个实现音频播放功能的Java类以及一...

Global site tag (gtag.js) - Google Analytics