就目前为止, javase中经常用到路径来读取一个资源文件的所有情况都已经整理在博客里面了,这里做一个统一的整理:



1,IO流来读取一个文件,比如说new FileInputStream("src/LinkinPark...")。配置文件要放在java项目的内部,读取的时候直接写路径就可以了。这个是系统默认的(也就是说自己会找到我们的应用程序),他会自己计算出位置的,所以写的时候直接写就可以了。比如:Inputstream ips = new FileInputStream("Linkin.properties")。JDK的原话是这样子说的,注意理解:通过打开一个到实际文件的连接来创建一个
FileInputStream,该文件通过文件系统中的路径名 name 指定。创建一个新 FileDescriptor 对象来表示此文件连接。在写这个参数的不用谢斜线,直接写这个文件在应用中的路径就好了。



2,File类来操作一个文件或者目录,或者利用类加载器ClassLoader的getResourceAsStream()方法读取资源,或者Class的getResourceAsStream()方法读取资源里面的参数是从classpath类路径下去寻找的,可以写绝对路径,也可以写相对路径,在框架中使用很多。注意理解:这里只是在查找一个普通的资源文件,不想上面那样子给对应的系统建立一个连接,而是从classPath路径里面去找。所以这里要不写相对路径(直接写),要不写绝对路径(/开头)。要是不写斜线就表示是一个相对路径。



3,还有一个很重要的区别也要注意:使用IO流或者是File类来操作文件,用到的都是源码级别的,所以呢,写那个路径的时候直接在workspace里面找就好了,所以在使用的写一个源码的Java文件是路径前面是要加“src”的,但是利用类加载器,类加载器加载的是类的class文件,他负责把这个class的二进制文件记载到JVM中,所以在写一个类文件的路径是不需要写“src”的,其实src也没有。

最新文章

  1. jQuery构造函数init参数分析(一)
  2. (转)RHEL/CentOS 6.x使用EPEL6与remi的yum源安装MySQL 5.5.x
  3. Silverlight 动画详解
  4. 明白何谓Margin Collapse
  5. 使用vs2013打开vs2015项目
  6. c# 小数取整
  7. 关于dispatchTouchEvent, onInterceptTouchEvent, onTouchEvent的分发机制浅析
  8. string.Join和Reverse的简单使用示例
  9. MyEclipse内存不足的问题
  10. win7_64位主机装虚机Linux系统(VMware Workstation10+CentOS6.5)详细步骤图文讲解
  11. C#整理5——break与continue.及数组
  12. U3D学习使用笔记(四)
  13. Android 控件背景选择图片还是drawable XML资源
  14. Android开发之字体设置
  15. bash 基础命令
  16. 用http请求一直失败,用https开头就ok了
  17. Java生成指定长度的随机数
  18. C - Balanced Number HDU - 3709 (数位dp)
  19. PHP——大话PHP设计模式——基本设计模式(工厂模式、单例模式、注册器模式)
  20. 题目1460:Oil Deposit(递归遍历图)

热门文章

  1. servlet里获得jsp页面里select的选项之值
  2. JavaScript(jquery)实现二级菜单联动
  3. iOS学习——UIAlertController详解
  4. MDK C++中对内联的极度优化
  5. 初学Vue之数量加减
  6. MYSQL:python 3.x连接数据库的方式
  7. Git学习随笔
  8. Maven教程(1)--maven的下载、安装与配置
  9. JS 引擎的执行机制
  10. 【Java数据结构学习笔记之一】线性表的存储结构及其代码实现