使用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来动态获取文件路径. 查阅链接如下: ...
随机推荐
- 【BZOJ3926】【ZJOI2015】诸神眷顾的幻想乡 广义后缀自动机
题目: 题目在这里 思路&做法: 参考的题解 既然只有\(20\)个叶子节点, 那么可以从每个叶子节点往上建一颗\(trie\)树, 然后合并成一棵大的\(trie\)树, 然后构建广义后缀自 ...
- HUdson2092整数解
2019-05-17 16:04:37 加油,坚持就是胜利,fightting m / i的情况,i可能等于0 #include <bits/stdc++.h> using namespa ...
- 前端分页功能实现(PC)
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>加 ...
- [转]C# ListView 单击标题实现排序(在转载的基础上有所完善)
using System; using System.Collections; using System.Windows.Forms; //在转载的基础上有所完善 namespace TDRFacto ...
- vue2.x阅读笔记
v-once 作用: 只赋值一次 注意: 包括子项都是只赋值一次 模板 1.v-text v-html 2.{}语法 3.如果是html的属性,则用v-bind绑定,简写: 注意: 1.可以使用jav ...
- Java基础9一面向对象
继承 1.特点 a) 要有一定的层次结构,并且具备可传递性. b) 判断两者之间是否有继承关系通过is-a来判断. c) 子类继承了父类,那么子类就继承了父类中所有的属性和方法,但是父类中的私有属性和 ...
- css3动画简单案例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- UML+模式设计概述
转自于:http://blog.csdn.net/rexuefengye/article/details/13020225 工程学:工程庞大到一定程度必须是用工程学方法,好比直接用水泥沙子建设实用的摩 ...
- CorelDRAW最高立返500元!还剩30个名额!速抢!
由于上月CDR X7返利活动收获众多好评 本月官方继续将活动进行到底! 而此次活动不但有上月意犹未尽的CDR X7版,更增加了CDR X6.CDR 2017以及可望不可即的CDR 2018版,可谓是优 ...
- 面试题-mysql
Sql :UPDATE test SET sex = CASE sex WHEN 'm' THEN 'f' ELSE 'm' END;