栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

项目中类路径以及文件的路径名不同写法

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

项目中类路径以及文件的路径名不同写法

目录
  • 绝对路径
  • 类路径
  • 通过类加载器获取src路径

绝对路径

在读取文件路径时,万能的方法就是使用绝对路径,但是不建议使用,因为不同开发者所以使用的项目和资源路径必定不同,代码的移植性很低。

@Test
  public void test1() throws IOException{
    FileReader fr = new FileReader("E:\IDEA\workspace\project01\JavaSE\src\source\jdbc.txt");  
    BufferedReader br = new BufferedReader(fr);
    String str = br.readLine();
    System.out.println(str);//user=jdbc
    br.close();
    fr.close();
  }
类路径

说明:使用类路径来表示文件的路径一定要从项目的根路径开始写起也就是与src同级的路径。(src全称source)

@Test
  public void test2() throws IOException{
  //extra.txt文件与src同级
    FileReader fr = new FileReader("extra.txt");
    BufferedReader br = new BufferedReader(fr);
    String str = br.readLine();
    System.out.println(str);//user=extra
    br.close();
    fr.close();
  }
@Test
  public void test2() throws IOException{
    FileReader fr = new FileReader("src/demo.txt");
    BufferedReader br = new BufferedReader(fr);
    String str = br.readLine();
    System.out.println(str);//user=demo
    br.close();
    fr.close();
  }
通过类加载器获取src路径
testclass.class.getClassLoader() //获取一个类加载器

testclass.class.getClassLoader().getResourceAsStream("xxx"); 
//获取src下的资源
 @Test
  public void test6() throws IOException{
    Properties pro = new Properties();//集合,map,key=value
    //获取class对象
    Class clazz = testclass.class;
    //获取类加载器
    ClassLoader loader = clazz.getClassLoader();
    //获取类路径src下的文件
   InputStream in = loader.getResourceAsStream("demo.txt");
   // InputStream in = loader.getResourceAsStream("source/jdbc.txt");
    pro.load(in);
    System.out.println(pro);//{user=demo}
    System.out.println(pro.getProperty("user"));//demo
  }

类加载器详细介绍: https://blog.csdn.net/weixin_46369022/article/details/120685684.

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/318701.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号