使用ClassLoader类装载器获取系统资源
分类: Java
| /* ClassLoader 有两种方法获得系统资源,一个种静态方法,一种是实例方法。 静态方法: URL getSystemResource(String) 实例方法: URL getResource(String) 下面是用实例方法载入资源的代码: import java.net.*; |
|
/** 演示使用类装载器的getResource()方法装载文件
* 例如在Java Web Start中装入资源时需要这样做。
*/
public class GetResourceDemo extends JPanel{
public static void main(String[] args) {
new GetResourceDemo().demo();
}
/** The demo itself */
public void demo() {
//从文件中装入图像,使用类装载器的getResource()方法打开文件
Image image;
ClassLoader classLoader = this.getClass().getClassLoader();
URL url= classLoader.getResource("022.jpg");
image=getToolkit().getImage(url);
ImageIcon ico=new ImageIcon(image);
System.out.println("OK load image");
//从文件中装入属性,使用类装载器的getResourceAsStream()方法。
InputStream is = classLoader.getResourceAsStream("widgets.properties");
if (is == null) {
System.err.println("Can't load propertiesfile");
return;
}
// 创建属性对象
Properties p = new Properties();
try {
p.load(is);
} catch (IOException ex) {
System.err.println("Load failed: " + ex);
return;
}
p.list(System.out);
}
}
运行结果:
C:\java>java GetResourceDemo
OK load image
-- listing properties --
edit.name=Edit
copy.name=Copy
exit.name=Quit
open.name=Open
open.key=O
copy.key=C
C:\java>
附:widgets.properties
# A seriously abbreviated widgets file for use by GetResourceDemo.
open.name=Open
open.key=O
edit.name=Edit
copy.name=Copy
copy.key=C
exit.name=Quit
使用ClassLoader类装载器获取系统资源的更多相关文章
- class getResourceAsStream 和 classloader getResourceAsStream获取资源的不同
工程目录结构: prj(工程根目录) cn json classloader GetResourceByClassAndClassLoader.Java beans.xml /** * */ pack ...
- Class.getResourceAsStream()与ClassLoader.getResourceAsStream()获取资源时的路径说明
Class.getResourceAsStream(): com.xusweeter.iot.ws.vodafone.config.VodafoneServiceConfig.class.getRes ...
- Linux Shell获取系统资源使用百分比(CentOS)
CPU使用率: top -b -n | | 内存使用率: free -m | grep '^-' | awk '{print $3/($3+$4)*100"%"}' IO使用率(F ...
- Python3 获取系统资源
cpu disk mem import osimport psutilos.chdir(os.getcwd()) #cpu def get_cpu_info(): cpu_percent=psutil ...
- 类装载器ClassLoader
类装载器工作机制 类装载器就是寻找类的节码文件并构造出类在JVM内部表示对象的组件.在Java中,类装载器把一个类装入JVM中,要经过以下步骤: [1.]装载:查找和导入Class文件: [2.]链接 ...
- Java类装载器ClassLoader
类装载器工作机制 类装载器就是寻找类的节码文件并构造出类在JVM内部表示对象的组件.在Java中,类装载器把一个类装入JVM中,要经过以下步骤: [1.]装载:查找和导入Class文件: [2.]链接 ...
- 使用Class.getResource和ClassLoader.getResource方法获取文件路径
自从转投Java阵营后,一直发下Java程序的路径读取异常麻烦,因此查阅了比较多的版本内容,整合了一份自己的学习笔记.主要使用Class及通过ClassLoader来动态获取文件路径. 查阅链接如下: ...
- 关于获取资源文件,Class.getResource和ClassLoader.getResource的区别
原文同步发表至个人博客[夜月归途] 原文链接:http://www.guitu18.com/se/java/2019-02-22/29.html 作者:夜月归途 出处:http://www.guitu ...
- 【转载】使用Class.getResource和ClassLoader.getResource方法获取文件路径
自从转投Java阵营后,一直发下Java程序的路径读取异常麻烦,因此查阅了比较多的版本内容,整合了一份自己的学习笔记.主要使用Class及通过ClassLoader来动态获取文件路径. 查阅链接如下: ...
随机推荐
- 基于Spring boot的web项目搭建教程(一)
前言: 本教程参考了大量前辈的代码,在此不方便一一列举.本教程使用IDEA开发工具搭建项目,对于本人的IDEA已经集成了某些插件,比如Lombok,Thymeleaf,yml等插件,这些插件不在文中提 ...
- JDBC基础02
今日知识 1. sql注入问题2. jdbc批处理3. 事务 SQL注入问题解决 1.什么是sql注入. * 用户通过相关的特殊关键字sql语句非法访问数据库 *例如: Xxx(' or '1'='1 ...
- 将实体类/匿名对象转换为SqlParameter列表
每次操作数据库参数化实在是太麻烦了,于是自己瞎琢磨,琢磨出下面扩展方式,能力有限,还有不足之处,请多多指教. /// <summary> /// <remarks> /// & ...
- asp.net 字符串过滤
/// <summary> /// 去除HTML标记 /// </summary> /// <param name="Htmlstring">包 ...
- lua中.和:的区别
local myTable = {} function myTable:putMyname(val) print(val) print(self and self.name) end myTable. ...
- 利用JavaScript做无缝滚动
<html> <head> <meta charset="utf-8"> <title>无标题文档</title> &l ...
- Android横屏时软键盘全屏问题
1.使用 SearchView xml加入 android:imeOptions="actionDone|flagNoExtractUi" 可以限制软键盘禁止全屏 <andr ...
- Django mysql 改用pymysql 驱动
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', #数据库引擎 'NAME': 'test', #数据库名 'USER' ...
- 前端开发app
1.如果是 Angular 那就选 Ionic (一对好 CP) 2.如果是 Vue 那就选 Vux (基于 WeUI)3.如果是 jQuery 那就选 Framework7 (iOS 和 Andro ...
- URLLib库使用
Date: 2019-06-19 Author: Sun urllib 在Python 3以后的版本中,urllib2这个模块已经不单独存在(也就是说当你import urllib2时,系统提示你 ...