Java中的绝对路径和相对路径

绝对路径和相对路径:
绝对路径:
绝对路径名是完整的路径名,不需要任何其他信息就可以定位它所表示的文件。(注意:文件路径不能出现中文字符,否则可能会报错)
相对路径:
在IDEA环境中写的是一个相对路径,绝对位置是工程目录。相对路径名必须使用取自其他路径名的信息进行解释。如果使用单元测试方法,相对路径就是基于当前的Module;如果是mian() 方法测试,相对路径就是基于当前的Project
在Eclipse当中无论是单元测试还是main() ,相对路径都是基于当前project的
下面测试是基于IDEA的,通过绝对路径打开一个文件夹,直接输入文件夹的根目录比如:

public abstract class RedPacketFrame extends JFrame {

    private static final long serialVersionUID = 1L;
    
    private static final String DIR = "C:\\Users\\lu\\Desktop\\RedPacket\\test\\demo\\pic";

    private ArrayList<Integer> moneyList = null;

如果是main()测试,通过相对路径打开一个文件,首先这个文件得在运行所属的project的目录里,如图所示:
在这里插入图片描述

public abstract class RedPacketFrame extends JFrame {

    private static final long serialVersionUID = 1L;

    private static final String DIR = "demo\\pic";

    private ArrayList<Integer> moneyList = null;

    private static int initMoney = 0;
    private static int totalMoney = 0; // 单位为“分”
    private static int count = 0;

或者当根目录是demo时,通过相对路径打开文件如图所示:在这里插入图片描述

public abstract class RedPacketFrame extends JFrame {

    private static final long serialVersionUID = 1L;

    private static final String DIR = "pic";

    private ArrayList<Integer> moneyList = null;

文件的构造方法:

public static void fun(){
//      File(String pathname)
//      pathname:
//          1)可以是文件夹    eg:c:\\123
//          2)也可以是文件    eg:c:\\123\\123.txt
//      将路径封装成File类型的对象
        //不对路径是否存在进行判断
        File file = new File("写路径名");
    }
    public static void fun1(){
//      File(String parent,String child)
//      需要传递路径的父路径(上一层),和子路径(下一层)
        File file = new File("d","****");
    }
    public static void fun2(){
//      File(File parent,String child)
//      需要传递路径的父路径(上一层),和子路径(下一层)
        File file = new File("d:");
        File file1 = new File(file,"sss");
    }

文件的增删操作


        //创建一个文件
	public static void fun() throws IOException {
		File file = new File("d:\\a.txt");
		//如果文件已经存在  便不在创建,只能创建文件不能创建文件夹
		boolean createNewFile = file.createNewFile();
		System.out.println(createNewFile);
	}
	//创建一个文件夹
	public static void fun1() throws IOException {
		File file = new File("d:\\aaa");
		//如果文件已经夹存在  便不在创建,不能用来创建文件
		boolean b = file.mkdir();
		//创建多级文件夹
		File file1 = new File("d:\\aa\\bb\\cc");
		boolean b1 = file1.mkdirs();
		//推荐使用mkdirs  可以创建一级或多级文件夹
	}	
	//删除文件或者文件夹
	public static void fun2(){
		File file = new File("d://aaa");
		//可以删除文件夹 也可以删文件夹
		//直接删除,不去回收站
		boolean delete = file.delete();
	}
	//获取文件或者文件夹的名称
	public static void fun3(){
		//获取文件最深路径的名字
		//不判断文件是否存在,文件路径错误也会返回
		//相当于直接切割file里面的路径名
		//此方法意义不大
		File file = new File("d:\\aaa");
		String name = file.getName();
		//和toString  返回结果一样
		file.getPath();
	}

对文件内容进行操作``

        //获取文件夹中所有文件和文件夹名称(所以的,包括隐藏的)
	public static void fun(){
		File file = new File("D:\\aaa");
		String[] list = file.list();
	}
	//获取文件夹中所有文件和文件夹名称(返回值是File对象)
	//返回了的目录或者文件全名
	public static void fun1(){
		File file = new File("D:\\aaa");
		File[] listFiles = file.listFiles();
	}
	//获取系统中的所有根目录
	public static void fun2(){
		File[] listRoots = File.listRoots();
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

加班的小年轻

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

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

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

打赏作者

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

抵扣说明:

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

余额充值