在eclipse下的相对路径

本文介绍了Java中如何使用绝对路径和相对路径创建、读写文件。通过示例代码展示了如何在E盘下创建绝对路径的文本文件,以及在项目目录下创建相对路径的文件。同时,讨论了如何获取文件的绝对路径,并提到了在src目录下创建文件的方法。最后,提及了通过类加载器动态获取类路径资源的方法。
摘要由CSDN通过智能技术生成

什么是相对路径和绝对路径? 绝对路径是带有盘符信息的路径,如D:\\workspace   相对路径就是没有盘符信息 如:images/test.txt。

最近在写文件写入写出的代码时,想如何创建一个只包含文件名的路径,并且可以被访问到?

1.绝对路径下进行文本读写。


import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.util.Scanner;

public class FileTest {
	
	public static void main(String[]args) throws IOException {
		File file = new File("E:\\test.txt");
		if(!file.exists()) {		
			System.out.println("文件不存在");
			//file.mkdirs();
			file.createNewFile();
		}
		
		FileWriter osw  = new FileWriter(file);
		BufferedWriter bw = new BufferedWriter(osw);
		String s ="wasane";
		bw.write(s);
		bw.newLine();
		
	
		bw.close();
		
	}
}

在E盘下创建了test.txt文本。

如何创建相对路径的文件呢?跟上述也是一样,我们要找到相对路径的地方在哪里。如果没有这个路径,让系统创建这个路径。并且获取创建这个文件的绝对路径。

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;


public class FileTest {
	
	public static void main(String[]args) throws IOException {
		File file = new File("test.txt");
		if(!file.exists()) {		
			System.out.println("文件不存在");
			//file.mkdirs();
			file.createNewFile();
		}
		
		FileWriter osw  = new FileWriter(file);
		BufferedWriter bw = new BufferedWriter(osw);
		String s ="wasane";
		bw.write(s);
		
		
	
		bw.close();
		System.out.println(file.getAbsolutePath());//获取文件的绝对路径
	}
}

运行之后发现,是在项目文件下创建的,与src同级

点击项目名,然后右键点击Refresh就可以发现项目下多了一个test.txt。

所以,如果我们要创建一个只包含文本名的路径,那么就可以直接在项目名下创建文本。

1.点击项目名。testcsdn

2.鼠标右键--》New --》File

        那么在src级下的呢?在text.txt前面添加一个\  ,就可以访问了,跟访问图片包一样。

        在src级下的类的路径叫做类路径,也是该类的根路径,如果某类在src下,要寻找该的路径也可以使用另外一个通用的方法。就是获取该项目在本机中的当前的绝对路径。不是自己写上去的绝对路径,而是通过类加载器去动态获取。

        

String path = Thread.currentThread().getContextClassLoader().
				getResource("a/Test01.txt").getPath();
		
System.out.println(path);

其中getResource("path"),要写全包名,并且具体的文件或类要写明后缀,类的话则是.class后缀。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tanxinji

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值