Java中获取同包下的文件方法

测试:在Eclipse的包下创建文件,更新文件

  1. 在Eclipse下创建note.txt

  2. 在该工程下的bin目录中的包下,也可以找到

  3. 在Eclipse下的note.txt中更新文件内容

  4. 在该工程下的bin目录中的包下的note.txt可以看到同样的更新内容

  5. 在Eclipse下创建note.txt

在eclipse中创建note,txt

  1. 在该工程下的bin目录中的包下,也可以找到

bin目录下可以找到,自动创建

  1. 在Eclipse下的note.txt中更新文件内容

Eclipse下更新note,txt
4. 在该工程下的bin目录中的包下的note.txt可以看到同样的更新内容
bin目录下的note.txt同步更新了

在bin目录下包的相同位置创建note1.txt

1.在bin目录下包中建立note1.txt
2.查看eclipse下的包中并无此文件(无论如何刷新,或者重启eclipse)

1.在bin目录下包中建立note1.txt

在这里插入图片描述
2.查看eclipse下的包中并无此文件(无论如何刷新,或者重启eclipse)
并无note1.txt

总结

  1. 在eclipse里的包下创建或更新文件,可以同步自动更新到bin目录下的相同位置
  2. 在bin目录下创建更新文件不会自动同步更新到eclipse下
  3. 一些获取同包下的文件时,写法很多,这些方法是活动bin下的包下的文件而非eclipse中的src下的文件,因此,经过我自己在自己eclipse中测试,可以使用如下方式获取src下文件。
package com.gao.xi;

import java.io.File;

public class TestSrcpath {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//默认是当前工程文件夹
		String path = "src/com/gao/xi/outputstream.txt";
		File file=new File(path);
		if(file.exists())
		{
			System.out.println("文件存在"+"\n"+"文件路径为:"+file.getAbsolutePath());
		}else{
			System.out.println("文件不存在");
		}
	
	}

}

输出:
文件路径是src下的而非bin

下面是一些得到bin目录下文件路径的方法的一些方法。你可能需要使用其中的一些方法来得到你需要的资源的绝对路径。(转自https://www.cnblogs.com/leehongee/p/3324062.html)

1.FileTest.class.getResource("")

得到的是当前类FileTest.class文件的URI目录。不包括自己!

如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/com/test/

2.FileTest.class.getResource("/")

得到的是当前的classpath的绝对URI路径。

如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/

3.Thread.currentThread().getContextClassLoader().getResource("")

得到的也是当前ClassPath的绝对URI路径。

如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/

4.FileTest.class.getClassLoader().getResource("")

得到的也是当前ClassPath的绝对URI路径。

如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/

5.ClassLoader.getSystemResource("")

得到的也是当前ClassPath的绝对URI路径。

如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/

我推荐使用Thread.currentThread().getContextClassLoader().getResource("")来得到当前的classpath的绝对路径的URI表示法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值